dialogflow-log-parser


Namedialogflow-log-parser JSON
Version 0.0.4 PyPI version JSON
download
home_pagehttps://github.com/PeterYusuke/dialogflow-log-parser
Summaryparse dialogflow log string
upload_time2023-12-10 05:21:45
maintainer
docs_urlNone
authorPeter Yusuke
requires_python
license
keywords dialogflow parse log hocon
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # dialogflow-log-parser
[![Coverage Status](https://coveralls.io/repos/github/PeterYusuke/dialogflow-log-parser/badge.svg?branch=main)](https://coveralls.io/github/PeterYusuke/dialogflow-log-parser?branch=main)

A module for dialogflow log parser

Only response textPaylod from dialogflow ES log file can be parsed into dict object. 

# Usage 

This module parses dialogflow logs into python dictionary type.

## Example usage
pip
```
pip install dialogflow-log-parser
```

python
```python
from dialogflow_log_parser.es import response_to_dict

# store log string
textPayload = '[text from dialogflow ES textPayload]'

# parse string to dictionary object
response_dict = response_to_dict(textPayload)

```

## Example of file and parsed object(json)
Please check test/es/data folder, so that you can know what kind of dictionary you get.  
Also use swagger.yml file in  [swagger editor](https://editor.swagger.io/) to see the entire response json data.

Log file
```conf
Dialogflow Response : 
    id: "response_id"
    lang: "ja"
    session_id: "dfMessenger-session-id"
    timestamp: "2000-01-01T01:00:21.720007Z"
    result {
      source: "agent"
      resolved_query: "WELCOME"
      action: "input.welcome"
      score: 1.0
        parameters {
        }
        metadata {
          intent_id: "intent_id"
          intent_name: "Default Welcome Intent"
          webhook_used: "false"
          webhook_for_slot_filling_used: "false"
          is_fallback_intent: "false"
        }
        fulfillment {
          speech: "hello"
          messages {
            lang: "ja"
            type {
              number_value: 0.0
            }
            speech {
              string_value: "hello"
            }
          }
        }
    }
    status {
      code: 200
      error_type: "success"
    }

```

Parsed json
```json
{
  "id": "response_id",
  "lang": "ja",
  "session_id": "dfMessenger-session-id",
  "timestamp": "2000-01-01T01:00:21.720007Z",
  "result": {
    "source": "agent",
    "resolved_query": "WELCOME",
    "action": "input.welcome",
    "score": 1.0,
    "parameters": [],
    "metadata": {
      "intent_id": "intent_id",
      "intent_name": "Default Welcome Intent",
      "webhook_used": "false",
      "webhook_for_slot_filling_used": "false",
      "is_fallback_intent": "false"
    },
    "fulfillment": {
      "speech": "hello",
      "messages": [
        {
          "lang": "ja",
          "type": 0.0,
          "speech": "hello"
        }
      ]
    }
  },
  "status": {
    "code": 200,
    "error_type": "success"
  }
}
```

# Issues
Feel free to post issues for adding some function. (i.e. request textPayload or CX edition.)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/PeterYusuke/dialogflow-log-parser",
    "name": "dialogflow-log-parser",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "dialogflow parse log hocon",
    "author": "Peter Yusuke",
    "author_email": "yyamashita1201@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/50/7b/7b21f8a50ab911c5c066ca1fb0dbac1f6c17e6cf5386a2e17f885debcf8e/dialogflow_log_parser-0.0.4.tar.gz",
    "platform": null,
    "description": "# dialogflow-log-parser\r\n[![Coverage Status](https://coveralls.io/repos/github/PeterYusuke/dialogflow-log-parser/badge.svg?branch=main)](https://coveralls.io/github/PeterYusuke/dialogflow-log-parser?branch=main)\r\n\r\nA module for dialogflow log parser\r\n\r\nOnly response textPaylod from dialogflow ES log file can be parsed into dict object. \r\n\r\n# Usage \r\n\r\nThis module parses dialogflow logs into python dictionary type.\r\n\r\n## Example usage\r\npip\r\n```\r\npip install dialogflow-log-parser\r\n```\r\n\r\npython\r\n```python\r\nfrom dialogflow_log_parser.es import response_to_dict\r\n\r\n# store log string\r\ntextPayload = '[text from dialogflow ES textPayload]'\r\n\r\n# parse string to dictionary object\r\nresponse_dict = response_to_dict(textPayload)\r\n\r\n```\r\n\r\n## Example of file and parsed object(json)\r\nPlease check test/es/data folder, so that you can know what kind of dictionary you get.  \r\nAlso use swagger.yml file in  [swagger editor](https://editor.swagger.io/) to see the entire response json data.\r\n\r\nLog file\r\n```conf\r\nDialogflow Response : \r\n    id: \"response_id\"\r\n    lang: \"ja\"\r\n    session_id: \"dfMessenger-session-id\"\r\n    timestamp: \"2000-01-01T01:00:21.720007Z\"\r\n    result {\r\n      source: \"agent\"\r\n      resolved_query: \"WELCOME\"\r\n      action: \"input.welcome\"\r\n      score: 1.0\r\n        parameters {\r\n        }\r\n        metadata {\r\n          intent_id: \"intent_id\"\r\n          intent_name: \"Default Welcome Intent\"\r\n          webhook_used: \"false\"\r\n          webhook_for_slot_filling_used: \"false\"\r\n          is_fallback_intent: \"false\"\r\n        }\r\n        fulfillment {\r\n          speech: \"hello\"\r\n          messages {\r\n            lang: \"ja\"\r\n            type {\r\n              number_value: 0.0\r\n            }\r\n            speech {\r\n              string_value: \"hello\"\r\n            }\r\n          }\r\n        }\r\n    }\r\n    status {\r\n      code: 200\r\n      error_type: \"success\"\r\n    }\r\n\r\n```\r\n\r\nParsed json\r\n```json\r\n{\r\n  \"id\": \"response_id\",\r\n  \"lang\": \"ja\",\r\n  \"session_id\": \"dfMessenger-session-id\",\r\n  \"timestamp\": \"2000-01-01T01:00:21.720007Z\",\r\n  \"result\": {\r\n    \"source\": \"agent\",\r\n    \"resolved_query\": \"WELCOME\",\r\n    \"action\": \"input.welcome\",\r\n    \"score\": 1.0,\r\n    \"parameters\": [],\r\n    \"metadata\": {\r\n      \"intent_id\": \"intent_id\",\r\n      \"intent_name\": \"Default Welcome Intent\",\r\n      \"webhook_used\": \"false\",\r\n      \"webhook_for_slot_filling_used\": \"false\",\r\n      \"is_fallback_intent\": \"false\"\r\n    },\r\n    \"fulfillment\": {\r\n      \"speech\": \"hello\",\r\n      \"messages\": [\r\n        {\r\n          \"lang\": \"ja\",\r\n          \"type\": 0.0,\r\n          \"speech\": \"hello\"\r\n        }\r\n      ]\r\n    }\r\n  },\r\n  \"status\": {\r\n    \"code\": 200,\r\n    \"error_type\": \"success\"\r\n  }\r\n}\r\n```\r\n\r\n# Issues\r\nFeel free to post issues for adding some function. (i.e. request textPayload or CX edition.)\r\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "parse dialogflow log string",
    "version": "0.0.4",
    "project_urls": {
        "Homepage": "https://github.com/PeterYusuke/dialogflow-log-parser"
    },
    "split_keywords": [
        "dialogflow",
        "parse",
        "log",
        "hocon"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "685f7c14856851b1cb13ead3c195820c596d05f719e488293f086ef77179b4bb",
                "md5": "7f154a146d4d09a403094860596d5832",
                "sha256": "118df4a88ebe356ba8374d58756d7b2b5ea745568ed54c6c3e475db7abbc7e5c"
            },
            "downloads": -1,
            "filename": "dialogflow_log_parser-0.0.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7f154a146d4d09a403094860596d5832",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 12765,
            "upload_time": "2023-12-10T05:21:43",
            "upload_time_iso_8601": "2023-12-10T05:21:43.655628Z",
            "url": "https://files.pythonhosted.org/packages/68/5f/7c14856851b1cb13ead3c195820c596d05f719e488293f086ef77179b4bb/dialogflow_log_parser-0.0.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "507b7b21f8a50ab911c5c066ca1fb0dbac1f6c17e6cf5386a2e17f885debcf8e",
                "md5": "d958b87b2fa914c0c276a00047fa747a",
                "sha256": "75a6515d9baa843dd0ee9b2bde5b536505ee62a4a4789614d4937ceb4d4c43b3"
            },
            "downloads": -1,
            "filename": "dialogflow_log_parser-0.0.4.tar.gz",
            "has_sig": false,
            "md5_digest": "d958b87b2fa914c0c276a00047fa747a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 12328,
            "upload_time": "2023-12-10T05:21:45",
            "upload_time_iso_8601": "2023-12-10T05:21:45.719663Z",
            "url": "https://files.pythonhosted.org/packages/50/7b/7b21f8a50ab911c5c066ca1fb0dbac1f6c17e6cf5386a2e17f885debcf8e/dialogflow_log_parser-0.0.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-12-10 05:21:45",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "PeterYusuke",
    "github_project": "dialogflow-log-parser",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "circle": true,
    "requirements": [],
    "lcname": "dialogflow-log-parser"
}
        
Elapsed time: 0.55798s