python-terminusgps 37.7.7__tar.gz → 37.8.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of python-terminusgps might be problematic. Click here for more details.

Files changed (339) hide show
  1. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/PKG-INFO +1 -1
  2. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/environment.pickle +0 -0
  3. python_terminusgps-37.8.0/docs/build/doctrees/wialon/session.doctree +0 -0
  4. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/index.html +7 -7
  5. python_terminusgps-37.8.0/docs/build/html/_modules/terminusgps/wialon/session.html +444 -0
  6. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/utils.html +102 -101
  7. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/documentation_options.js +1 -1
  8. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/authorizenet/auth.html +7 -7
  9. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/authorizenet/constants.html +7 -7
  10. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/authorizenet/controllers.html +7 -7
  11. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/authorizenet/examples.html +7 -7
  12. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/authorizenet/index.html +7 -7
  13. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/authorizenet/profiles.html +7 -7
  14. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/authorizenet/utils.html +7 -7
  15. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/authorizenet/validators.html +7 -7
  16. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/aws/index.html +7 -7
  17. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/aws/notifications.html +7 -7
  18. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/aws/secrets.html +7 -7
  19. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/django/forms.html +7 -7
  20. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/django/index.html +7 -7
  21. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/django/mixins.html +7 -7
  22. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/django/settings.html +7 -7
  23. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/django/validators.html +7 -7
  24. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/genindex.html +11 -25
  25. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/index.html +6 -6
  26. python_terminusgps-37.8.0/docs/build/html/objects.inv +0 -0
  27. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/py-modindex.html +6 -6
  28. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/search.html +7 -7
  29. python_terminusgps-37.8.0/docs/build/html/searchindex.js +1 -0
  30. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/twilio/caller.html +7 -7
  31. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/twilio/examples.html +7 -7
  32. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/twilio/index.html +7 -7
  33. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/wialon/constants.html +7 -7
  34. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/wialon/errors.html +7 -7
  35. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/wialon/examples.html +7 -7
  36. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/wialon/flags.html +7 -7
  37. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/wialon/index.html +7 -7
  38. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/wialon/items.html +7 -7
  39. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/wialon/session.html +14 -133
  40. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/wialon/utils.html +7 -7
  41. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/conf.py +1 -1
  42. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/pyproject.toml +1 -1
  43. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/session.py +12 -135
  44. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/utils.py +1 -0
  45. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/uv.lock +7 -7
  46. python_terminusgps-37.7.7/docs/build/doctrees/wialon/session.doctree +0 -0
  47. python_terminusgps-37.7.7/docs/build/html/_modules/terminusgps/wialon/session.html +0 -567
  48. python_terminusgps-37.7.7/docs/build/html/objects.inv +0 -0
  49. python_terminusgps-37.7.7/docs/build/html/searchindex.js +0 -1
  50. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/.gitignore +0 -0
  51. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/COPYING +0 -0
  52. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/README.md +0 -0
  53. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/Makefile +0 -0
  54. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/coverage/c.txt +0 -0
  55. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/coverage/python.txt +0 -0
  56. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/coverage/undoc.pickle +0 -0
  57. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/authorizenet/auth.doctree +0 -0
  58. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/authorizenet/constants.doctree +0 -0
  59. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/authorizenet/controllers.doctree +0 -0
  60. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/authorizenet/examples.doctree +0 -0
  61. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/authorizenet/index.doctree +0 -0
  62. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/authorizenet/profiles.doctree +0 -0
  63. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/authorizenet/subscriptions.doctree +0 -0
  64. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/authorizenet/utils.doctree +0 -0
  65. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/authorizenet/validators.doctree +0 -0
  66. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/aws/index.doctree +0 -0
  67. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/aws/notifications.doctree +0 -0
  68. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/aws/secrets.doctree +0 -0
  69. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/aws/speech.doctree +0 -0
  70. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/aws/utils.doctree +0 -0
  71. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/django/forms.doctree +0 -0
  72. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/django/index.doctree +0 -0
  73. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/django/mixins.doctree +0 -0
  74. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/django/settings.doctree +0 -0
  75. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/django/validators.doctree +0 -0
  76. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/index.doctree +0 -0
  77. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/mixins.doctree +0 -0
  78. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/settings.doctree +0 -0
  79. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/twilio/caller.doctree +0 -0
  80. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/twilio/examples.doctree +0 -0
  81. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/twilio/index.doctree +0 -0
  82. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/twilio/settings.doctree +0 -0
  83. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/validators.doctree +0 -0
  84. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/wialon/constants.doctree +0 -0
  85. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/wialon/errors.doctree +0 -0
  86. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/wialon/examples.doctree +0 -0
  87. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/wialon/flags.doctree +0 -0
  88. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/wialon/index.doctree +0 -0
  89. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/wialon/items.doctree +0 -0
  90. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/wialon/settings.doctree +0 -0
  91. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/doctrees/wialon/utils.doctree +0 -0
  92. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/auth.html +0 -0
  93. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/constants.html +0 -0
  94. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/controllers.html +0 -0
  95. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/errors.html +0 -0
  96. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/profiles/addresses.html +0 -0
  97. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/profiles/base.html +0 -0
  98. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/profiles/customers.html +0 -0
  99. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/profiles/payments.html +0 -0
  100. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/profiles/subscriptions.html +0 -0
  101. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/subscriptions/subscriptions.html +0 -0
  102. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/utils.html +0 -0
  103. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/authorizenet/validators.html +0 -0
  104. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/aws/notifications.html +0 -0
  105. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/aws/secrets.html +0 -0
  106. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/aws/speech.html +0 -0
  107. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/django/forms/fields.html +0 -0
  108. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/django/forms/renderer.html +0 -0
  109. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/django/forms/widgets.html +0 -0
  110. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/django/forms.html +0 -0
  111. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/django/mixins.html +0 -0
  112. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/django/validators.html +0 -0
  113. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/mixins.html +0 -0
  114. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/twilio/caller.html +0 -0
  115. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/constants.html +0 -0
  116. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/flags.html +0 -0
  117. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/items/base.html +0 -0
  118. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/items/geofence.html +0 -0
  119. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/items/notification.html +0 -0
  120. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/items/resource.html +0 -0
  121. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/items/retranslator.html +0 -0
  122. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/items/route.html +0 -0
  123. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/items/unit.html +0 -0
  124. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/items/unit_group.html +0 -0
  125. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/terminusgps/wialon/items/user.html +0 -0
  126. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_modules/wialon/api.html +0 -0
  127. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/authorizenet/auth.rst.txt +0 -0
  128. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/authorizenet/constants.rst.txt +0 -0
  129. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/authorizenet/controllers.rst.txt +0 -0
  130. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/authorizenet/examples.rst.txt +0 -0
  131. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/authorizenet/index.rst.txt +0 -0
  132. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/authorizenet/profiles.rst.txt +0 -0
  133. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/authorizenet/subscriptions.rst.txt +0 -0
  134. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/authorizenet/utils.rst.txt +0 -0
  135. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/authorizenet/validators.rst.txt +0 -0
  136. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/aws/index.rst.txt +0 -0
  137. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/aws/notifications.rst.txt +0 -0
  138. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/aws/secrets.rst.txt +0 -0
  139. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/aws/speech.rst.txt +0 -0
  140. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/aws/utils.rst.txt +0 -0
  141. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/django/forms.rst.txt +0 -0
  142. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/django/index.rst.txt +0 -0
  143. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/django/mixins.rst.txt +0 -0
  144. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/django/settings.rst.txt +0 -0
  145. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/django/validators.rst.txt +0 -0
  146. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/index.rst.txt +0 -0
  147. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/mixins.rst.txt +0 -0
  148. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/settings.rst.txt +0 -0
  149. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/twilio/caller.rst.txt +0 -0
  150. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/twilio/examples.rst.txt +0 -0
  151. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/twilio/index.rst.txt +0 -0
  152. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/twilio/settings.rst.txt +0 -0
  153. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/validators.rst.txt +0 -0
  154. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/wialon/constants.rst.txt +0 -0
  155. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/wialon/errors.rst.txt +0 -0
  156. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/wialon/examples.rst.txt +0 -0
  157. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/wialon/flags.rst.txt +0 -0
  158. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/wialon/index.rst.txt +0 -0
  159. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/wialon/items.rst.txt +0 -0
  160. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/wialon/session.rst.txt +0 -0
  161. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/wialon/settings.rst.txt +0 -0
  162. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_sources/wialon/utils.rst.txt +0 -0
  163. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/0fc70aa4dfe4d16d7073.woff +0 -0
  164. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/583e3f428bf2362b546d.woff +0 -0
  165. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/5be6ec379613f10aea3f.woff +0 -0
  166. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/76c1862325ea6f70eeff.woff2 +0 -0
  167. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/83710c128240451d95af.woff +0 -0
  168. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/_sphinx_javascript_frameworks_compat.js +0 -0
  169. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/a63d39a1c104a2b3e87e.woff2 +0 -0
  170. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/autoclasstoc.css +0 -0
  171. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/awesome-docsearch.css +0 -0
  172. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/awesome-docsearch.js +0 -0
  173. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/awesome-sphinx-design.css +0 -0
  174. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/awesome-sphinx-design.js +0 -0
  175. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/b659956119f91f2342bc.woff2 +0 -0
  176. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/basic.css +0 -0
  177. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/bb50084be2b43ba7b98c.woff2 +0 -0
  178. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/ce1e40901d7a0d88d483.woff2 +0 -0
  179. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/badge_only.css +0 -0
  180. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/custom.css +0 -0
  181. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/custom.css.map +0 -0
  182. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff +0 -0
  183. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff2 +0 -0
  184. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff +0 -0
  185. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff2 +0 -0
  186. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/fontawesome-webfont.eot +0 -0
  187. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/fontawesome-webfont.svg +0 -0
  188. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/fontawesome-webfont.ttf +0 -0
  189. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/fontawesome-webfont.woff +0 -0
  190. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/fontawesome-webfont.woff2 +0 -0
  191. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/lato-bold-italic.woff +0 -0
  192. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/lato-bold-italic.woff2 +0 -0
  193. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/lato-bold.woff +0 -0
  194. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/lato-bold.woff2 +0 -0
  195. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/lato-normal-italic.woff +0 -0
  196. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/lato-normal-italic.woff2 +0 -0
  197. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/lato-normal.woff +0 -0
  198. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/fonts/lato-normal.woff2 +0 -0
  199. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/theme.css +0 -0
  200. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/theme.css.map +0 -0
  201. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/theme.min.css +0 -0
  202. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/css/theme.min.css.map +0 -0
  203. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/d04352f240062b100fba.woff2 +0 -0
  204. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/doctools.js +0 -0
  205. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/f1cdf5c21de970ee0592.woff +0 -0
  206. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fd994e8d90d9cab651b0.woff +0 -0
  207. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/file.png +0 -0
  208. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/font/fontello.eot +0 -0
  209. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/font/fontello.svg +0 -0
  210. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/font/fontello.ttf +0 -0
  211. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/font/fontello.woff +0 -0
  212. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/font/fontello.woff2 +0 -0
  213. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-bold.eot +0 -0
  214. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-bold.ttf +0 -0
  215. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-bold.woff +0 -0
  216. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-bold.woff2 +0 -0
  217. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-bolditalic.eot +0 -0
  218. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-bolditalic.ttf +0 -0
  219. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-bolditalic.woff +0 -0
  220. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-bolditalic.woff2 +0 -0
  221. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-italic.eot +0 -0
  222. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-italic.ttf +0 -0
  223. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-italic.woff +0 -0
  224. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-italic.woff2 +0 -0
  225. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-regular.eot +0 -0
  226. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-regular.ttf +0 -0
  227. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-regular.woff +0 -0
  228. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/Lato/lato-regular.woff2 +0 -0
  229. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot +0 -0
  230. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf +0 -0
  231. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff +0 -0
  232. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2 +0 -0
  233. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot +0 -0
  234. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf +0 -0
  235. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff +0 -0
  236. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2 +0 -0
  237. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/jquery.js +0 -0
  238. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/js/badge_only.js +0 -0
  239. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/js/theme.js +0 -0
  240. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/js/versions.js +0 -0
  241. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/language_data.js +0 -0
  242. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/minus.png +0 -0
  243. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/plus.png +0 -0
  244. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/pygments.css +0 -0
  245. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/searchtools.js +0 -0
  246. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/sphinx_highlight.js +0 -0
  247. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/theme.css +0 -0
  248. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/theme.js +0 -0
  249. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/_static/theme.js.LICENSE.txt +0 -0
  250. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/authorizenet/subscriptions.html +0 -0
  251. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/aws/speech.html +0 -0
  252. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/aws/utils.html +0 -0
  253. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/mixins.html +0 -0
  254. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/settings.html +0 -0
  255. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/twilio/settings.html +0 -0
  256. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/validators.html +0 -0
  257. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/html/wialon/settings.html +0 -0
  258. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/linkcheck/output.json +0 -0
  259. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/build/linkcheck/output.txt +0 -0
  260. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/make.bat +0 -0
  261. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/authorizenet/auth.rst +0 -0
  262. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/authorizenet/constants.rst +0 -0
  263. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/authorizenet/controllers.rst +0 -0
  264. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/authorizenet/examples.rst +0 -0
  265. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/authorizenet/index.rst +0 -0
  266. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/authorizenet/profiles.rst +0 -0
  267. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/authorizenet/utils.rst +0 -0
  268. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/authorizenet/validators.rst +0 -0
  269. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/aws/index.rst +0 -0
  270. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/aws/notifications.rst +0 -0
  271. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/aws/secrets.rst +0 -0
  272. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/django/forms.rst +0 -0
  273. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/django/index.rst +0 -0
  274. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/django/mixins.rst +0 -0
  275. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/django/settings.rst +0 -0
  276. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/django/validators.rst +0 -0
  277. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/index.rst +0 -0
  278. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/twilio/caller.rst +0 -0
  279. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/twilio/examples.rst +0 -0
  280. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/twilio/index.rst +0 -0
  281. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/wialon/constants.rst +0 -0
  282. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/wialon/errors.rst +0 -0
  283. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/wialon/examples.rst +0 -0
  284. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/wialon/flags.rst +0 -0
  285. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/wialon/index.rst +0 -0
  286. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/wialon/items.rst +0 -0
  287. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/wialon/session.rst +0 -0
  288. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/docs/source/wialon/utils.rst +0 -0
  289. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/__init__.py +0 -0
  290. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/__init__.py +0 -0
  291. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/auth.py +0 -0
  292. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/constants.py +0 -0
  293. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/controllers.py +0 -0
  294. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/profiles/__init__.py +0 -0
  295. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/profiles/addresses.py +0 -0
  296. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/profiles/base.py +0 -0
  297. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/profiles/customers.py +0 -0
  298. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/profiles/payments.py +0 -0
  299. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/profiles/subscriptions.py +0 -0
  300. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/tests/__init__.py +0 -0
  301. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/tests/test_auth.py +0 -0
  302. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/tests/test_profiles.py +0 -0
  303. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/tests/test_utils.py +0 -0
  304. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/utils.py +0 -0
  305. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/authorizenet/validators.py +0 -0
  306. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/aws/__init__.py +0 -0
  307. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/aws/notifications.py +0 -0
  308. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/aws/secrets.py +0 -0
  309. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/aws/tests/__init__.py +0 -0
  310. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/aws/tests/test_notifications.py +0 -0
  311. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/aws/tests/test_secrets.py +0 -0
  312. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/__init__.py +0 -0
  313. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/forms/__init__.py +0 -0
  314. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/forms/fields.py +0 -0
  315. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/forms/forms.py +0 -0
  316. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/forms/renderer.py +0 -0
  317. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/forms/widgets.py +0 -0
  318. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/mixins.py +0 -0
  319. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/settings.py +0 -0
  320. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/tests/test_forms.py +0 -0
  321. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/tests/test_mixins.py +0 -0
  322. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/tests/test_utils.py +0 -0
  323. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/utils.py +0 -0
  324. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/django/validators.py +0 -0
  325. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/twilio/__init__.py +0 -0
  326. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/twilio/caller.py +0 -0
  327. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/__init__.py +0 -0
  328. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/constants.py +0 -0
  329. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/flags.py +0 -0
  330. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/items/__init__.py +0 -0
  331. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/items/base.py +0 -0
  332. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/items/resource.py +0 -0
  333. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/items/retranslator.py +0 -0
  334. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/items/route.py +0 -0
  335. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/items/unit.py +0 -0
  336. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/items/unit_group.py +0 -0
  337. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/items/user.py +0 -0
  338. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/renderer.py +0 -0
  339. {python_terminusgps-37.7.7 → python_terminusgps-37.8.0}/terminusgps/wialon/validators.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-terminusgps
3
- Version: 37.7.7
3
+ Version: 37.8.0
4
4
  Summary: Provides abstractions/utilities for working with Wialon API, Authorize.NET API, AWS API, and more.
5
5
  Project-URL: Documentation, https://docs.terminusgps.com
6
6
  Project-URL: Repository, https://github.com/terminusgps/python-terminusgps
@@ -12,9 +12,9 @@
12
12
  <meta name="theme-color" media="(prefers-color-scheme: light)" content="white" />
13
13
  <meta name="theme-color" media="(prefers-color-scheme: dark)" content="black" />
14
14
 
15
- <title>Overview: module code | python-terminusgps 37.7.7 documentation</title>
16
- <meta property="og:title" content="Overview: module code | python-terminusgps 37.7.7 documentation" />
17
- <meta name="twitter:title" content="Overview: module code | python-terminusgps 37.7.7 documentation" />
15
+ <title>Overview: module code | python-terminusgps 37.8.0 documentation</title>
16
+ <meta property="og:title" content="Overview: module code | python-terminusgps 37.8.0 documentation" />
17
+ <meta name="twitter:title" content="Overview: module code | python-terminusgps 37.8.0 documentation" />
18
18
  <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=d691ff6c" />
19
19
  <link rel="stylesheet" type="text/css" href="../_static/theme.css?v=42baaae4" />
20
20
  <link rel="stylesheet" type="text/css" href="../_static/autoclasstoc.css?v=08871587" />
@@ -40,7 +40,7 @@
40
40
  </a><header
41
41
  class="sticky top-0 z-40 w-full border-b shadow-sm border-border supports-backdrop-blur:bg-background/60 bg-background/95 backdrop-blur"><div class="container flex items-center h-14">
42
42
  <div class="hidden mr-4 md:flex">
43
- <a href="../index.html" class="flex items-center mr-6"><span class="hidden font-bold sm:inline-block text-clip whitespace-nowrap">python-terminusgps 37.7.7 documentation</span>
43
+ <a href="../index.html" class="flex items-center mr-6"><span class="hidden font-bold sm:inline-block text-clip whitespace-nowrap">python-terminusgps 37.8.0 documentation</span>
44
44
  </a></div><button
45
45
  class="inline-flex items-center justify-center h-10 px-0 py-2 mr-2 text-base font-medium transition-colors rounded-md hover:text-accent-foreground hover:bg-transparent md:hidden"
46
46
  type="button" @click="showSidebar = true">
@@ -95,7 +95,7 @@
95
95
  class="fixed inset-y-0 left-0 md:top-14 z-50 md:z-30 bg-background md:bg-transparent transition-all duration-100 -translate-x-full md:translate-x-0 ml-0 p-6 md:p-0 md:-ml-2 md:h-[calc(100vh-3.5rem)] w-5/6 md:w-full shrink-0 overflow-y-auto border-r border-border md:sticky"
96
96
  :aria-hidden="!showSidebar" :class="{ 'translate-x-0': showSidebar }">
97
97
 
98
- <a href="../index.html" class="!justify-start text-sm md:!hidden bg-background"><span class="font-bold text-clip whitespace-nowrap">python-terminusgps 37.7.7 documentation</span>
98
+ <a href="../index.html" class="!justify-start text-sm md:!hidden bg-background"><span class="font-bold text-clip whitespace-nowrap">python-terminusgps 37.8.0 documentation</span>
99
99
  </a>
100
100
 
101
101
  <div class="relative overflow-hidden md:overflow-auto my-4 md:my-0 h-[calc(100vh-8rem)] md:h-auto">
@@ -159,7 +159,7 @@
159
159
  class="flex items-center mb-4 space-x-1 text-sm text-muted-foreground">
160
160
  <a class="overflow-hidden text-ellipsis whitespace-nowrap hover:text-foreground"
161
161
  href="../index.html">
162
- <span class="hidden md:inline">python-terminusgps 37.7.7 documentation</span>
162
+ <span class="hidden md:inline">python-terminusgps 37.8.0 documentation</span>
163
163
  <svg xmlns="http://www.w3.org/2000/svg"
164
164
  height="18"
165
165
  width="18"
@@ -223,7 +223,7 @@
223
223
  </footer>
224
224
  </div>
225
225
 
226
- <script src="../_static/documentation_options.js?v=0cbc7083"></script>
226
+ <script src="../_static/documentation_options.js?v=71264fca"></script>
227
227
  <script src="../_static/doctools.js?v=9bcbadda"></script>
228
228
  <script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
229
229
  <script defer="defer" src="../_static/theme.js?v=073f68d9"></script>
@@ -0,0 +1,444 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en"
3
+ data-content_root="../../../"
4
+ x-data="{ darkMode: localStorage.getItem('darkMode') || localStorage.setItem('darkMode', 'system'), activeSection: '' }"
5
+ x-init="$watch('darkMode', val => localStorage.setItem('darkMode', val))"
6
+ class="scroll-smooth"
7
+ :class="{'dark': darkMode === 'dark' || (darkMode === 'system' && window.matchMedia('(prefers-color-scheme: dark)').matches)}"
8
+ >
9
+ <head>
10
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
11
+ <meta charset="utf-8" />
12
+ <meta name="theme-color" media="(prefers-color-scheme: light)" content="white" />
13
+ <meta name="theme-color" media="(prefers-color-scheme: dark)" content="black" />
14
+
15
+ <title>terminusgps.wialon.session | python-terminusgps 37.8.0 documentation</title>
16
+ <meta property="og:title" content="terminusgps.wialon.session | python-terminusgps 37.8.0 documentation" />
17
+ <meta name="twitter:title" content="terminusgps.wialon.session | python-terminusgps 37.8.0 documentation" />
18
+ <link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=d691ff6c" />
19
+ <link rel="stylesheet" type="text/css" href="../../../_static/theme.css?v=42baaae4" />
20
+ <link rel="stylesheet" type="text/css" href="../../../_static/autoclasstoc.css?v=08871587" />
21
+ <link rel="search" title="Search" href="../../../search.html" />
22
+ <link rel="index" title="Index" href="../../../genindex.html" />
23
+
24
+ <script>
25
+ <!-- Prevent Flash of wrong theme -->
26
+ const userPreference = localStorage.getItem('darkMode');
27
+ let mode;
28
+ if (userPreference === 'dark' || window.matchMedia('(prefers-color-scheme: dark)').matches) {
29
+ mode = 'dark';
30
+ document.documentElement.classList.add('dark');
31
+ } else {
32
+ mode = 'light';
33
+ }
34
+ if (!userPreference) {localStorage.setItem('darkMode', mode)}
35
+ </script>
36
+ </head>
37
+ <body x-data="{ showSidebar: false, showScrollTop: false }" class="min-h-screen font-sans antialiased bg-background text-foreground" :class="{ 'overflow-hidden': showSidebar }">
38
+ <div x-cloak x-show="showSidebar" class="fixed inset-0 z-50 overflow-hidden bg-background/80 backdrop-blur-sm md:hidden" @click.self="showSidebar = false"></div><div id="page" class="relative flex flex-col min-h-screen"><a href="#content" class="absolute top-0 left-0 z-[100] block bg-background p-4 text-xl transition -translate-x-full opacity-0 focus:translate-x-0 focus:opacity-100">
39
+ Skip to content
40
+ </a><header
41
+ class="sticky top-0 z-40 w-full border-b shadow-sm border-border supports-backdrop-blur:bg-background/60 bg-background/95 backdrop-blur"><div class="container flex items-center h-14">
42
+ <div class="hidden mr-4 md:flex">
43
+ <a href="../../../index.html" class="flex items-center mr-6"><span class="hidden font-bold sm:inline-block text-clip whitespace-nowrap">python-terminusgps 37.8.0 documentation</span>
44
+ </a></div><button
45
+ class="inline-flex items-center justify-center h-10 px-0 py-2 mr-2 text-base font-medium transition-colors rounded-md hover:text-accent-foreground hover:bg-transparent md:hidden"
46
+ type="button" @click="showSidebar = true">
47
+ <svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 96 960 960" aria-hidden="true"
48
+ fill="currentColor">
49
+ <path
50
+ d="M152.587 825.087q-19.152 0-32.326-13.174t-13.174-32.326q0-19.152 13.174-32.326t32.326-13.174h440q19.152 0 32.326 13.174t13.174 32.326q0 19.152-13.174 32.326t-32.326 13.174h-440Zm0-203.587q-19.152 0-32.326-13.174T107.087 576q0-19.152 13.174-32.326t32.326-13.174h320q19.152 0 32.326 13.174T518.087 576q0 19.152-13.174 32.326T472.587 621.5h-320Zm0-203.587q-19.152 0-32.326-13.174t-13.174-32.326q0-19.152 13.174-32.326t32.326-13.174h440q19.152 0 32.326 13.174t13.174 32.326q0 19.152-13.174 32.326t-32.326 13.174h-440ZM708.913 576l112.174 112.174q12.674 12.674 12.674 31.826t-12.674 31.826Q808.413 764.5 789.261 764.5t-31.826-12.674l-144-144Q600 594.391 600 576t13.435-31.826l144-144q12.674-12.674 31.826-12.674t31.826 12.674q12.674 12.674 12.674 31.826t-12.674 31.826L708.913 576Z" />
51
+ </svg>
52
+ <span class="sr-only">Toggle navigation menu</span>
53
+ </button>
54
+ <div class="flex items-center justify-between flex-1 space-x-2 sm:space-x-4 md:justify-end">
55
+ <div class="flex-1 w-full md:w-auto md:flex-none"><form id="searchbox"
56
+ action="../../../search.html"
57
+ method="get"
58
+ class="relative flex items-center group"
59
+ @keydown.k.window.meta="$refs.search.focus()">
60
+ <input x-ref="search"
61
+ name="q"
62
+ id="search-input"
63
+ type="search"
64
+ aria-label="Search the docs"
65
+ placeholder="Search ..."
66
+ class="inline-flex items-center font-medium transition-colors bg-transparent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 ring-offset-background border border-input hover:bg-accent focus:bg-accent hover:text-accent-foreground focus:text-accent-foreground hover:placeholder-accent-foreground py-2 px-4 relative h-9 w-full justify-start rounded-[0.5rem] text-sm text-muted-foreground sm:pr-12 md:w-40 lg:w-64" />
67
+ <kbd class="pointer-events-none absolute right-1.5 top-2 hidden h-5 select-none text-muted-foreground items-center gap-1 rounded border border-border bg-muted px-1.5 font-mono text-[10px] font-medium opacity-100 sm:flex group-hover:bg-accent group-hover:text-accent-foreground">
68
+ <span class="text-xs">⌘</span>
69
+ K
70
+ </kbd>
71
+ </form>
72
+ </div>
73
+ <nav class="flex items-center space-x-1">
74
+ <button @click="darkMode = darkMode === 'light' ? 'dark' : 'light'"
75
+ class="relative inline-flex items-center justify-center px-0 text-sm font-medium transition-colors rounded-md hover:bg-accent hover:text-accent-foreground h-9 w-9"
76
+ type="button"
77
+ aria-label="Color theme switcher">
78
+ <svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 96 960 960" fill="currentColor"
79
+ class="absolute transition-all scale-100 rotate-0 dark:-rotate-90 dark:scale-0">
80
+ <path
81
+ d="M480 685q45.456 0 77.228-31.772Q589 621.456 589 576q0-45.456-31.772-77.228Q525.456 467 480 467q-45.456 0-77.228 31.772Q371 530.544 371 576q0 45.456 31.772 77.228Q434.544 685 480 685Zm0 91q-83 0-141.5-58.5T280 576q0-83 58.5-141.5T480 376q83 0 141.5 58.5T680 576q0 83-58.5 141.5T480 776ZM80 621.5q-19.152 0-32.326-13.174T34.5 576q0-19.152 13.174-32.326T80 530.5h80q19.152 0 32.326 13.174T205.5 576q0 19.152-13.174 32.326T160 621.5H80Zm720 0q-19.152 0-32.326-13.174T754.5 576q0-19.152 13.174-32.326T800 530.5h80q19.152 0 32.326 13.174T925.5 576q0 19.152-13.174 32.326T880 621.5h-80Zm-320-320q-19.152 0-32.326-13.174T434.5 256v-80q0-19.152 13.174-32.326T480 130.5q19.152 0 32.326 13.174T525.5 176v80q0 19.152-13.174 32.326T480 301.5Zm0 720q-19.152 0-32.326-13.17Q434.5 995.152 434.5 976v-80q0-19.152 13.174-32.326T480 850.5q19.152 0 32.326 13.174T525.5 896v80q0 19.152-13.174 32.33-13.174 13.17-32.326 13.17ZM222.174 382.065l-43-42Q165.5 327.391 166 308.239t13.174-33.065q13.435-13.674 32.587-13.674t32.065 13.674l42.239 43q12.674 13.435 12.555 31.706-.12 18.272-12.555 31.946-12.674 13.674-31.445 13.413-18.772-.261-32.446-13.174Zm494 494.761-42.239-43q-12.674-13.435-12.674-32.087t12.674-31.565Q686.609 756.5 705.38 757q18.772.5 32.446 13.174l43 41.761Q794.5 824.609 794 843.761t-13.174 33.065Q767.391 890.5 748.239 890.5t-32.065-13.674Zm-42-494.761Q660.5 369.391 661 350.62q.5-18.772 13.174-32.446l41.761-43Q728.609 261.5 747.761 262t33.065 13.174q13.674 13.435 13.674 32.587t-13.674 32.065l-43 42.239q-13.435 12.674-31.706 12.555-18.272-.12-31.946-12.555Zm-495 494.761Q165.5 863.391 165.5 844.239t13.674-32.065l43-42.239q13.435-12.674 32.087-12.674t31.565 12.674Q299.5 782.609 299 801.38q-.5 18.772-13.174 32.446l-41.761 43Q231.391 890.5 212.239 890t-33.065-13.174ZM480 576Z" />
82
+ </svg>
83
+ <svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 96 960 960" fill="currentColor"
84
+ class="absolute transition-all scale-0 rotate-90 dark:rotate-0 dark:scale-100">
85
+ <path
86
+ d="M480 936q-151 0-255.5-104.5T120 576q0-138 90-239.5T440 218q25-3 39 18t-1 44q-17 26-25.5 55t-8.5 61q0 90 63 153t153 63q31 0 61.5-9t54.5-25q21-14 43-1.5t19 39.5q-14 138-117.5 229T480 936Zm0-80q88 0 158-48.5T740 681q-20 5-40 8t-40 3q-123 0-209.5-86.5T364 396q0-20 3-40t8-40q-78 32-126.5 102T200 576q0 116 82 198t198 82Zm-10-270Z" />
87
+ </svg>
88
+ </button>
89
+ </nav>
90
+ </div>
91
+ </div>
92
+ </header>
93
+
94
+ <div class="flex-1"><div class="container flex-1 items-start md:grid md:grid-cols-[220px_minmax(0,1fr)] md:gap-6 lg:grid-cols-[240px_minmax(0,1fr)] lg:gap-10"><aside id="left-sidebar"
95
+ class="fixed inset-y-0 left-0 md:top-14 z-50 md:z-30 bg-background md:bg-transparent transition-all duration-100 -translate-x-full md:translate-x-0 ml-0 p-6 md:p-0 md:-ml-2 md:h-[calc(100vh-3.5rem)] w-5/6 md:w-full shrink-0 overflow-y-auto border-r border-border md:sticky"
96
+ :aria-hidden="!showSidebar" :class="{ 'translate-x-0': showSidebar }">
97
+
98
+ <a href="../../../index.html" class="!justify-start text-sm md:!hidden bg-background"><span class="font-bold text-clip whitespace-nowrap">python-terminusgps 37.8.0 documentation</span>
99
+ </a>
100
+
101
+ <div class="relative overflow-hidden md:overflow-auto my-4 md:my-0 h-[calc(100vh-8rem)] md:h-auto">
102
+ <div class="overflow-y-auto h-full w-full relative pr-6"><nav class="table w-full min-w-full my-6 lg:my-8">
103
+ <p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
104
+ <ul>
105
+ <li class="toctree-l1"><a class="reference internal" href="../../../authorizenet/index.html">Authorizenet API</a><ul>
106
+ <li class="toctree-l2"><a class="reference internal" href="../../../authorizenet/auth.html">Authorizenet API Authentication</a></li>
107
+ <li class="toctree-l2"><a class="reference internal" href="../../../authorizenet/constants.html">Constants</a></li>
108
+ <li class="toctree-l2"><a class="reference internal" href="../../../authorizenet/controllers.html">API Controllers</a></li>
109
+ <li class="toctree-l2"><a class="reference internal" href="../../../authorizenet/examples.html">Usage Examples</a></li>
110
+ <li class="toctree-l2"><a class="reference internal" href="../../../authorizenet/profiles.html">Profiles</a></li>
111
+ <li class="toctree-l2"><a class="reference internal" href="../../../authorizenet/utils.html">Utilities</a></li>
112
+ <li class="toctree-l2"><a class="reference internal" href="../../../authorizenet/validators.html">Validators</a></li>
113
+ </ul>
114
+ </li>
115
+ <li class="toctree-l1"><a class="reference internal" href="../../../aws/index.html">AWS API</a><ul>
116
+ <li class="toctree-l2"><a class="reference internal" href="../../../aws/notifications.html">Notifications</a></li>
117
+ <li class="toctree-l2"><a class="reference internal" href="../../../aws/secrets.html">Secrets</a></li>
118
+ </ul>
119
+ </li>
120
+ <li class="toctree-l1"><a class="reference internal" href="../../../django/index.html">Django</a><ul>
121
+ <li class="toctree-l2"><a class="reference internal" href="../../../django/forms.html">Forms</a></li>
122
+ <li class="toctree-l2"><a class="reference internal" href="../../../django/mixins.html">Mixins</a></li>
123
+ <li class="toctree-l2"><a class="reference internal" href="../../../django/settings.html">Settings</a></li>
124
+ <li class="toctree-l2"><a class="reference internal" href="../../../django/validators.html">Validators</a></li>
125
+ </ul>
126
+ </li>
127
+ <li class="toctree-l1"><a class="reference internal" href="../../../twilio/index.html">Twilio API</a><ul>
128
+ <li class="toctree-l2"><a class="reference internal" href="../../../twilio/caller.html">Caller object</a></li>
129
+ <li class="toctree-l2"><a class="reference internal" href="../../../twilio/examples.html">Usage Examples</a></li>
130
+ </ul>
131
+ </li>
132
+ <li class="toctree-l1"><a class="reference internal" href="../../../wialon/index.html">Wialon API</a><ul>
133
+ <li class="toctree-l2"><a class="reference internal" href="../../../wialon/constants.html">Constants</a></li>
134
+ <li class="toctree-l2"><a class="reference internal" href="../../../wialon/errors.html">Errors</a></li>
135
+ <li class="toctree-l2"><a class="reference internal" href="../../../wialon/examples.html">Usage Examples</a></li>
136
+ <li class="toctree-l2"><a class="reference internal" href="../../../wialon/flags.html">Flags</a></li>
137
+ <li class="toctree-l2"><a class="reference internal" href="../../../wialon/items.html">Items</a></li>
138
+ <li class="toctree-l2"><a class="reference internal" href="../../../wialon/session.html">Wialon API Sessions</a></li>
139
+ <li class="toctree-l2"><a class="reference internal" href="../../../wialon/utils.html">Utilities</a></li>
140
+ </ul>
141
+ </li>
142
+ </ul>
143
+
144
+ </nav>
145
+ </div>
146
+ </div>
147
+ <button type="button" @click="showSidebar = false"
148
+ class="absolute md:hidden right-4 top-4 rounded-sm opacity-70 transition-opacity hover:opacity-100">
149
+ <svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 96 960 960" fill="currentColor"
150
+ stroke="none" class="h-4 w-4">
151
+ <path
152
+ d="M480 632 284 828q-11 11-28 11t-28-11q-11-11-11-28t11-28l196-196-196-196q-11-11-11-28t11-28q11-11 28-11t28 11l196 196 196-196q11-11 28-11t28 11q11 11 11 28t-11 28L536 576l196 196q11 11 11 28t-11 28q-11 11-28 11t-28-11L480 632Z" />
153
+ </svg>
154
+ </button>
155
+ </aside>
156
+ <main class="relative py-6 lg:gap-10 lg:py-8 xl:grid xl:grid-cols-[1fr_300px]">
157
+ <div class="w-full min-w-0 mx-auto">
158
+ <nav aria-label="breadcrumbs"
159
+ class="flex items-center mb-4 space-x-1 text-sm text-muted-foreground">
160
+ <a class="overflow-hidden text-ellipsis whitespace-nowrap hover:text-foreground"
161
+ href="../../../index.html">
162
+ <span class="hidden md:inline">python-terminusgps 37.8.0 documentation</span>
163
+ <svg xmlns="http://www.w3.org/2000/svg"
164
+ height="18"
165
+ width="18"
166
+ viewBox="0 96 960 960"
167
+ aria-label="Home"
168
+ fill="currentColor"
169
+ stroke="none"
170
+ class="md:hidden">
171
+ <path d="M240 856h120V616h240v240h120V496L480 316 240 496v360Zm-80 80V456l320-240 320 240v480H520V696h-80v240H160Zm320-350Z" />
172
+ </svg>
173
+ </a>
174
+
175
+ <div class="mr-1">/</div><a class="hover:text-foreground overflow-hidden text-ellipsis whitespace-nowrap"
176
+ href="../../index.html">Module code</a>
177
+
178
+ <div class="mr-1">/</div><span aria-current="page"
179
+ class="font-medium text-foreground overflow-hidden text-ellipsis whitespace-nowrap">terminusgps.wialon.session</span>
180
+ </nav>
181
+
182
+ <div id="content" role="main">
183
+ <h1>Source code for terminusgps.wialon.session</h1><div class="highlight"><pre>
184
+ <span></span><code><span id="line-1"><span class="kn">import</span><span class="w"> </span><span class="nn">os</span>
185
+ </span><span id="line-2"><span class="kn">import</span><span class="w"> </span><span class="nn">typing</span>
186
+ </span><span id="line-3">
187
+ </span><span id="line-4"><span class="kn">import</span><span class="w"> </span><span class="nn">wialon.api</span>
188
+ </span><span id="line-5"><span class="kn">from</span><span class="w"> </span><span class="nn">loguru</span><span class="w"> </span><span class="kn">import</span> <span class="n">logger</span>
189
+ </span><span id="line-6">
190
+ </span><span id="line-7"><span class="kn">from</span><span class="w"> </span><span class="nn">.</span><span class="w"> </span><span class="kn">import</span> <span class="n">flags</span> <span class="k">as</span> <span class="n">wialon_flags</span>
191
+ </span><span id="line-8">
192
+ </span><span id="line-9"><span class="n">logger</span><span class="o">.</span><span class="n">disable</span><span class="p">(</span><span class="vm">__name__</span><span class="p">)</span>
193
+ </span><span id="line-10">
194
+ </span><span id="line-11">
195
+ </span><span id="line-12"><span class="k">class</span><span class="w"> </span><span class="nc">Wialon</span><span class="p">(</span><span class="n">wialon</span><span class="o">.</span><span class="n">api</span><span class="o">.</span><span class="n">Wialon</span><span class="p">):</span>
196
+ </span><span id="line-13"> <span class="k">def</span><span class="w"> </span><span class="nf">call</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">action_name</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="o">*</span><span class="n">argc</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">typing</span><span class="o">.</span><span class="n">Any</span><span class="p">]:</span>
197
+ </span><span id="line-14"> <span class="k">try</span><span class="p">:</span>
198
+ </span><span id="line-15"> <span class="n">result</span> <span class="o">=</span> <span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">call</span><span class="p">(</span><span class="n">action_name</span><span class="p">,</span> <span class="o">*</span><span class="n">argc</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
199
+ </span><span id="line-16"> <span class="n">logger</span><span class="o">.</span><span class="n">debug</span><span class="p">(</span><span class="s2">&quot;Successfully executed &#39;</span><span class="si">{}</span><span class="s2">&#39;&quot;</span><span class="p">,</span> <span class="n">action_name</span><span class="p">)</span>
200
+ </span><span id="line-17"> <span class="k">return</span> <span class="n">result</span>
201
+ </span><span id="line-18"> <span class="k">except</span> <span class="n">wialon</span><span class="o">.</span><span class="n">api</span><span class="o">.</span><span class="n">WialonError</span><span class="p">:</span>
202
+ </span><span id="line-19"> <span class="n">logger</span><span class="o">.</span><span class="n">warning</span><span class="p">(</span><span class="s2">&quot;Failed to execute &#39;</span><span class="si">{}</span><span class="s2">&#39;&quot;</span><span class="p">,</span> <span class="n">action_name</span><span class="p">)</span>
203
+ </span><span id="line-20"> <span class="k">return</span> <span class="p">{}</span>
204
+ </span><span id="line-21">
205
+ </span><span id="line-22">
206
+ <div class="viewcode-block" id="WialonSession">
207
+ <a class="viewcode-back" href="../../../wialon/session.html#terminusgps.wialon.session.WialonSession">[docs]</a>
208
+ </span><span id="line-23"><span class="k">class</span><span class="w"> </span><span class="nc">WialonSession</span><span class="p">:</span>
209
+ </span><span id="line-24"> <span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span>
210
+ </span><span id="line-25"> <span class="bp">self</span><span class="p">,</span>
211
+ </span><span id="line-26"> <span class="n">token</span><span class="p">:</span> <span class="nb">str</span> <span class="o">|</span> <span class="kc">None</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
212
+ </span><span id="line-27"> <span class="n">sid</span><span class="p">:</span> <span class="nb">str</span> <span class="o">|</span> <span class="kc">None</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
213
+ </span><span id="line-28"> <span class="n">scheme</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;https&quot;</span><span class="p">,</span>
214
+ </span><span id="line-29"> <span class="n">host</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;hst-api.wialon.com&quot;</span><span class="p">,</span>
215
+ </span><span id="line-30"> <span class="n">port</span><span class="p">:</span> <span class="nb">int</span> <span class="o">=</span> <span class="mi">443</span><span class="p">,</span>
216
+ </span><span id="line-31"> <span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
217
+ </span><span id="line-32"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
218
+ </span><span id="line-33"><span class="sd"> Starts or continues a Wialon API session.</span>
219
+ </span><span id="line-34">
220
+ </span><span id="line-35"><span class="sd"> :param token: An optional Wialon API token. Default is :confval:`WIALON_TOKEN`.</span>
221
+ </span><span id="line-36"><span class="sd"> :type token: :py:obj:`str` | :py:obj:`None`</span>
222
+ </span><span id="line-37"><span class="sd"> :param sid: An optional Wialon API session id. If provided, the session is continued.</span>
223
+ </span><span id="line-38"><span class="sd"> :type sid: :py:obj:`str` | :py:obj:`None`</span>
224
+ </span><span id="line-39"><span class="sd"> :param scheme: HTTP request scheme to use. Default is ``&quot;https&quot;``.</span>
225
+ </span><span id="line-40"><span class="sd"> :type scheme: :py:obj:`str`</span>
226
+ </span><span id="line-41"><span class="sd"> :param host: Wialon API host url. Default is ``&quot;hst-api.wialon.com&quot;``.</span>
227
+ </span><span id="line-42"><span class="sd"> :type host: :py:obj:`str`</span>
228
+ </span><span id="line-43"><span class="sd"> :param host: Wialon API rendering url. Default is ``&quot;render-maps.wialon.com&quot;``.</span>
229
+ </span><span id="line-44"><span class="sd"> :type host: :py:obj:`str`</span>
230
+ </span><span id="line-45"><span class="sd"> :param port: Wialon API host port. Default is ``443``.</span>
231
+ </span><span id="line-46"><span class="sd"> :type port: :py:obj:`int`</span>
232
+ </span><span id="line-47"><span class="sd"> :returns: Nothing.</span>
233
+ </span><span id="line-48"><span class="sd"> :rtype: :py:obj:`None`</span>
234
+ </span><span id="line-49">
235
+ </span><span id="line-50"><span class="sd"> &quot;&quot;&quot;</span>
236
+ </span><span id="line-51">
237
+ </span><span id="line-52"> <span class="bp">self</span><span class="o">.</span><span class="n">_token</span> <span class="o">=</span> <span class="n">token</span> <span class="ow">or</span> <span class="n">os</span><span class="o">.</span><span class="n">getenv</span><span class="p">(</span><span class="s2">&quot;WIALON_TOKEN&quot;</span><span class="p">)</span>
238
+ </span><span id="line-53"> <span class="bp">self</span><span class="o">.</span><span class="n">_username</span> <span class="o">=</span> <span class="kc">None</span>
239
+ </span><span id="line-54"> <span class="bp">self</span><span class="o">.</span><span class="n">_gis_sid</span> <span class="o">=</span> <span class="kc">None</span>
240
+ </span><span id="line-55"> <span class="bp">self</span><span class="o">.</span><span class="n">_hw_gp_ip</span> <span class="o">=</span> <span class="kc">None</span>
241
+ </span><span id="line-56"> <span class="bp">self</span><span class="o">.</span><span class="n">_wsdk_version</span> <span class="o">=</span> <span class="kc">None</span>
242
+ </span><span id="line-57"> <span class="bp">self</span><span class="o">.</span><span class="n">_uid</span> <span class="o">=</span> <span class="kc">None</span>
243
+ </span><span id="line-58"> <span class="bp">self</span><span class="o">.</span><span class="n">_wialon_api</span> <span class="o">=</span> <span class="n">Wialon</span><span class="p">(</span>
244
+ </span><span id="line-59"> <span class="n">scheme</span><span class="o">=</span><span class="n">scheme</span><span class="p">,</span> <span class="n">host</span><span class="o">=</span><span class="n">host</span><span class="p">,</span> <span class="n">port</span><span class="o">=</span><span class="n">port</span><span class="p">,</span> <span class="n">sid</span><span class="o">=</span><span class="n">sid</span><span class="p">,</span> <span class="n">token</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">token</span>
245
+ </span><span id="line-60"> <span class="p">)</span>
246
+ </span><span id="line-61">
247
+ </span><span id="line-62"> <span class="k">def</span><span class="w"> </span><span class="fm">__str__</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span><span class="p">:</span>
248
+ </span><span id="line-63"> <span class="k">return</span> <span class="sa">f</span><span class="s2">&quot;Session #</span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">id</span><span class="si">}</span><span class="s2">&quot;</span>
249
+ </span><span id="line-64">
250
+ </span><span id="line-65"> <span class="k">def</span><span class="w"> </span><span class="fm">__repr__</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span><span class="p">:</span>
251
+ </span><span id="line-66"> <span class="k">return</span> <span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="vm">__class__</span><span class="si">}</span><span class="s2">(sid=</span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">id</span><span class="si">}</span><span class="s2">)&quot;</span>
252
+ </span><span id="line-67">
253
+ </span><span id="line-68"> <span class="k">def</span><span class="w"> </span><span class="fm">__enter__</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="s2">&quot;WialonSession&quot;</span><span class="p">:</span>
254
+ </span><span id="line-69"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
255
+ </span><span id="line-70"><span class="sd"> Logs into the Wialon API using :py:meth:`login`.</span>
256
+ </span><span id="line-71">
257
+ </span><span id="line-72"><span class="sd"> :raises AssertionError: If the session&#39;s Wialon API :py:attr:`token` wasn&#39;t set.</span>
258
+ </span><span id="line-73"><span class="sd"> :returns: A valid Wialon API session.</span>
259
+ </span><span id="line-74"><span class="sd"> :rtype: :py:obj:`~terminusgps.wialon.session.WialonSession`</span>
260
+ </span><span id="line-75">
261
+ </span><span id="line-76"><span class="sd"> &quot;&quot;&quot;</span>
262
+ </span><span id="line-77"> <span class="k">assert</span> <span class="bp">self</span><span class="o">.</span><span class="n">token</span><span class="p">,</span> <span class="s2">&quot;Wialon API token wasn&#39;t set.&quot;</span>
263
+ </span><span id="line-78"> <span class="bp">self</span><span class="o">.</span><span class="n">login</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">token</span><span class="p">)</span>
264
+ </span><span id="line-79"> <span class="k">return</span> <span class="bp">self</span>
265
+ </span><span id="line-80">
266
+ </span><span id="line-81"> <span class="k">def</span><span class="w"> </span><span class="fm">__exit__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">exc_type</span><span class="p">,</span> <span class="n">exc_value</span><span class="p">,</span> <span class="n">exc_traceback</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
267
+ </span><span id="line-82"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
268
+ </span><span id="line-83"><span class="sd"> Logs out of the session by calling :py:meth:`logout`.</span>
269
+ </span><span id="line-84">
270
+ </span><span id="line-85"><span class="sd"> :returns: Nothing.</span>
271
+ </span><span id="line-86"><span class="sd"> :rtype: :py:obj:`None`</span>
272
+ </span><span id="line-87">
273
+ </span><span id="line-88"><span class="sd"> &quot;&quot;&quot;</span>
274
+ </span><span id="line-89"> <span class="bp">self</span><span class="o">.</span><span class="n">logout</span><span class="p">()</span>
275
+ </span><span id="line-90">
276
+ </span><span id="line-91"> <span class="nd">@property</span>
277
+ </span><span id="line-92"> <span class="k">def</span><span class="w"> </span><span class="nf">wialon_api</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Wialon</span><span class="p">:</span>
278
+ </span><span id="line-93"> <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_wialon_api</span>
279
+ </span><span id="line-94">
280
+ </span><span id="line-95"> <span class="nd">@property</span>
281
+ </span><span id="line-96"> <span class="k">def</span><span class="w"> </span><span class="nf">host</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span> <span class="o">|</span> <span class="kc">None</span><span class="p">:</span>
282
+ </span><span id="line-97"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
283
+ </span><span id="line-98"><span class="sd"> IP of the client hosting the Wialon session.</span>
284
+ </span><span id="line-99">
285
+ </span><span id="line-100"><span class="sd"> :type: :py:obj:`str` | :py:obj:`None`</span>
286
+ </span><span id="line-101"><span class="sd"> :value: :py:obj:`None`</span>
287
+ </span><span id="line-102">
288
+ </span><span id="line-103"><span class="sd"> &quot;&quot;&quot;</span>
289
+ </span><span id="line-104"> <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_host</span>
290
+ </span><span id="line-105">
291
+ </span><span id="line-106"> <span class="nd">@property</span>
292
+ </span><span id="line-107"> <span class="k">def</span><span class="w"> </span><span class="nf">wsdk_version</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span> <span class="o">|</span> <span class="kc">None</span><span class="p">:</span>
293
+ </span><span id="line-108"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
294
+ </span><span id="line-109"><span class="sd"> The Wialon Source Developer Kit (WSDK) version number of the session.</span>
295
+ </span><span id="line-110">
296
+ </span><span id="line-111"><span class="sd"> :type: :py:obj:`str` | :py:obj:`None`</span>
297
+ </span><span id="line-112"><span class="sd"> :value: :py:obj:`None`</span>
298
+ </span><span id="line-113">
299
+ </span><span id="line-114"><span class="sd"> &quot;&quot;&quot;</span>
300
+ </span><span id="line-115"> <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_wsdk_version</span>
301
+ </span><span id="line-116">
302
+ </span><span id="line-117"> <span class="nd">@property</span>
303
+ </span><span id="line-118"> <span class="k">def</span><span class="w"> </span><span class="nf">uid</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span> <span class="o">|</span> <span class="kc">None</span><span class="p">:</span>
304
+ </span><span id="line-119"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
305
+ </span><span id="line-120"><span class="sd"> A Wialon user ID this session is operating as.</span>
306
+ </span><span id="line-121">
307
+ </span><span id="line-122"><span class="sd"> :type: :py:obj:`str` | :py:obj:`None`</span>
308
+ </span><span id="line-123"><span class="sd"> :value: :py:obj:`None`</span>
309
+ </span><span id="line-124"><span class="sd"> &quot;&quot;&quot;</span>
310
+ </span><span id="line-125"> <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_uid</span>
311
+ </span><span id="line-126">
312
+ </span><span id="line-127"> <span class="nd">@property</span>
313
+ </span><span id="line-128"> <span class="k">def</span><span class="w"> </span><span class="nf">username</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span> <span class="o">|</span> <span class="kc">None</span><span class="p">:</span>
314
+ </span><span id="line-129"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
315
+ </span><span id="line-130"><span class="sd"> A Wialon username the session is operating as.</span>
316
+ </span><span id="line-131">
317
+ </span><span id="line-132"><span class="sd"> :type: :py:obj:`str` | :py:obj:`None`</span>
318
+ </span><span id="line-133"><span class="sd"> :value: :py:obj:`None`</span>
319
+ </span><span id="line-134">
320
+ </span><span id="line-135"><span class="sd"> &quot;&quot;&quot;</span>
321
+ </span><span id="line-136"> <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_username</span>
322
+ </span><span id="line-137">
323
+ </span><span id="line-138"> <span class="nd">@property</span>
324
+ </span><span id="line-139"> <span class="k">def</span><span class="w"> </span><span class="nf">id</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span> <span class="o">|</span> <span class="kc">None</span><span class="p">:</span>
325
+ </span><span id="line-140"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
326
+ </span><span id="line-141"><span class="sd"> Shortcut property for :py:attr:`WialonSession.wialon_api.sid`.</span>
327
+ </span><span id="line-142">
328
+ </span><span id="line-143"><span class="sd"> Returns :py:obj:`None` if the session wasn&#39;t logged in.</span>
329
+ </span><span id="line-144">
330
+ </span><span id="line-145"><span class="sd"> :type: :py:obj:`str` | :py:obj:`None`</span>
331
+ </span><span id="line-146"><span class="sd"> :value: :py:obj:`None`</span>
332
+ </span><span id="line-147">
333
+ </span><span id="line-148"><span class="sd"> &quot;&quot;&quot;</span>
334
+ </span><span id="line-149"> <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">wialon_api</span><span class="o">.</span><span class="n">sid</span>
335
+ </span><span id="line-150">
336
+ </span><span id="line-151"> <span class="nd">@property</span>
337
+ </span><span id="line-152"> <span class="k">def</span><span class="w"> </span><span class="nf">token</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span><span class="p">:</span>
338
+ </span><span id="line-153"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
339
+ </span><span id="line-154"><span class="sd"> A Wialon API token set during :py:meth:`WialonSession.__init__`.</span>
340
+ </span><span id="line-155">
341
+ </span><span id="line-156"><span class="sd"> Default token value is :confval:`WIALON_TOKEN`.</span>
342
+ </span><span id="line-157">
343
+ </span><span id="line-158"><span class="sd"> :type: :py:obj:`str`</span>
344
+ </span><span id="line-159"><span class="sd"> :value: :confval:`WIALON_TOKEN`</span>
345
+ </span><span id="line-160">
346
+ </span><span id="line-161"><span class="sd"> &quot;&quot;&quot;</span>
347
+ </span><span id="line-162"> <span class="k">return</span> <span class="nb">str</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_token</span><span class="p">)</span>
348
+ </span><span id="line-163">
349
+ <div class="viewcode-block" id="WialonSession.login">
350
+ <a class="viewcode-back" href="../../../wialon/session.html#terminusgps.wialon.session.WialonSession.login">[docs]</a>
351
+ </span><span id="line-164"> <span class="k">def</span><span class="w"> </span><span class="nf">login</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">token</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">flags</span><span class="p">:</span> <span class="nb">int</span> <span class="o">|</span> <span class="kc">None</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">str</span><span class="p">:</span>
352
+ </span><span id="line-165"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
353
+ </span><span id="line-166"><span class="sd"> Logs into the Wialon API and starts a new session.</span>
354
+ </span><span id="line-167">
355
+ </span><span id="line-168"><span class="sd"> :param token: An active Wialon API token.</span>
356
+ </span><span id="line-169"><span class="sd"> :type token: :py:obj:`str`</span>
357
+ </span><span id="line-170"><span class="sd"> :param flags: A login response flag integer.</span>
358
+ </span><span id="line-171"><span class="sd"> :type flags: :py:obj:`int`</span>
359
+ </span><span id="line-172"><span class="sd"> :raises WialonError: If the login fails.</span>
360
+ </span><span id="line-173"><span class="sd"> :raises AssertionError: If the login token was not set.</span>
361
+ </span><span id="line-174"><span class="sd"> :returns: The new session id.</span>
362
+ </span><span id="line-175"><span class="sd"> :rtype: :py:obj:`str`</span>
363
+ </span><span id="line-176">
364
+ </span><span id="line-177"><span class="sd"> &quot;&quot;&quot;</span>
365
+ </span><span id="line-178"> <span class="k">if</span> <span class="n">flags</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
366
+ </span><span id="line-179"> <span class="n">flags</span> <span class="o">=</span> <span class="p">(</span>
367
+ </span><span id="line-180"> <span class="n">wialon_flags</span><span class="o">.</span><span class="n">TokenFlag</span><span class="o">.</span><span class="n">ONLINE_TRACKING</span>
368
+ </span><span id="line-181"> <span class="o">|</span> <span class="n">wialon_flags</span><span class="o">.</span><span class="n">TokenFlag</span><span class="o">.</span><span class="n">VIEW_ACCESS</span>
369
+ </span><span id="line-182"> <span class="o">|</span> <span class="n">wialon_flags</span><span class="o">.</span><span class="n">TokenFlag</span><span class="o">.</span><span class="n">MANAGE_NONSENSITIVE</span>
370
+ </span><span id="line-183"> <span class="p">)</span>
371
+ </span><span id="line-184"> <span class="k">try</span><span class="p">:</span>
372
+ </span><span id="line-185"> <span class="n">response</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">wialon_api</span><span class="o">.</span><span class="n">token_login</span><span class="p">(</span><span class="o">**</span><span class="p">{</span><span class="s2">&quot;token&quot;</span><span class="p">:</span> <span class="n">token</span><span class="p">,</span> <span class="s2">&quot;fl&quot;</span><span class="p">:</span> <span class="n">flags</span><span class="p">})</span>
373
+ </span><span id="line-186"> <span class="bp">self</span><span class="o">.</span><span class="n">_set_login_response</span><span class="p">(</span><span class="n">response</span><span class="p">)</span>
374
+ </span><span id="line-187"> <span class="k">return</span> <span class="n">response</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;eid&quot;</span><span class="p">,</span> <span class="s2">&quot;&quot;</span><span class="p">)</span>
375
+ </span><span id="line-188"> <span class="k">except</span> <span class="p">(</span><span class="n">wialon</span><span class="o">.</span><span class="n">api</span><span class="o">.</span><span class="n">WialonError</span><span class="p">,</span> <span class="ne">ValueError</span><span class="p">):</span>
376
+ </span><span id="line-189"> <span class="n">logger</span><span class="o">.</span><span class="n">critical</span><span class="p">(</span><span class="s2">&quot;Failed to login to the Wialon API.&quot;</span><span class="p">)</span>
377
+ </span><span id="line-190"> <span class="k">raise</span></div>
378
+
379
+ </span><span id="line-191">
380
+ <div class="viewcode-block" id="WialonSession.logout">
381
+ <a class="viewcode-back" href="../../../wialon/session.html#terminusgps.wialon.session.WialonSession.logout">[docs]</a>
382
+ </span><span id="line-192"> <span class="k">def</span><span class="w"> </span><span class="nf">logout</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
383
+ </span><span id="line-193"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
384
+ </span><span id="line-194"><span class="sd"> Logs out of the Wialon API session.</span>
385
+ </span><span id="line-195">
386
+ </span><span id="line-196"><span class="sd"> :returns: Nothing.</span>
387
+ </span><span id="line-197"><span class="sd"> :rtype: :py:obj:`None`</span>
388
+ </span><span id="line-198">
389
+ </span><span id="line-199"><span class="sd"> &quot;&quot;&quot;</span>
390
+ </span><span id="line-200"> <span class="n">sid</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">wialon_api</span><span class="o">.</span><span class="n">sid</span>
391
+ </span><span id="line-201"> <span class="n">response</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">wialon_api</span><span class="o">.</span><span class="n">core_logout</span><span class="p">({})</span>
392
+ </span><span id="line-202">
393
+ </span><span id="line-203"> <span class="k">if</span> <span class="n">response</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;error&quot;</span><span class="p">)</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">:</span>
394
+ </span><span id="line-204"> <span class="n">logger</span><span class="o">.</span><span class="n">warning</span><span class="p">(</span>
395
+ </span><span id="line-205"> <span class="s2">&quot;Failed to properly logout of session #</span><span class="si">{}</span><span class="s2">: &#39;</span><span class="si">{}</span><span class="s2">&#39;&quot;</span><span class="p">,</span>
396
+ </span><span id="line-206"> <span class="n">sid</span><span class="p">,</span>
397
+ </span><span id="line-207"> <span class="n">response</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;message&quot;</span><span class="p">),</span>
398
+ </span><span id="line-208"> <span class="p">)</span>
399
+ </span><span id="line-209"> <span class="bp">self</span><span class="o">.</span><span class="n">wialon_api</span><span class="o">.</span><span class="n">sid</span> <span class="o">=</span> <span class="kc">None</span></div>
400
+
401
+ </span><span id="line-210">
402
+ </span><span id="line-211"> <span class="k">def</span><span class="w"> </span><span class="nf">_set_login_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">login_response</span><span class="p">:</span> <span class="nb">dict</span> <span class="o">|</span> <span class="kc">None</span> <span class="o">=</span> <span class="kc">None</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
403
+ </span><span id="line-212"><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
404
+ </span><span id="line-213"><span class="sd"> Sets the Wialon API session&#39;s attributes based on a login response.</span>
405
+ </span><span id="line-214">
406
+ </span><span id="line-215"><span class="sd"> :param login_response: A dictionary returned from :py:meth:`login`.</span>
407
+ </span><span id="line-216"><span class="sd"> :type login_response: :py:obj:`dict`</span>
408
+ </span><span id="line-217"><span class="sd"> :raises ValueError: If ``login_response`` wasn&#39;t provided.</span>
409
+ </span><span id="line-218"><span class="sd"> :returns: Nothing.</span>
410
+ </span><span id="line-219"><span class="sd"> :rtype: :py:obj:`None`</span>
411
+ </span><span id="line-220">
412
+ </span><span id="line-221"><span class="sd"> &quot;&quot;&quot;</span>
413
+ </span><span id="line-222"> <span class="k">if</span> <span class="n">login_response</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
414
+ </span><span id="line-223"> <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Login response is required, got &#39;</span><span class="si">{</span><span class="n">login_response</span><span class="si">}</span><span class="s2">&#39;&quot;</span><span class="p">)</span>
415
+ </span><span id="line-224">
416
+ </span><span id="line-225"> <span class="bp">self</span><span class="o">.</span><span class="n">wialon_api</span><span class="o">.</span><span class="n">sid</span> <span class="o">=</span> <span class="n">login_response</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;eid&quot;</span><span class="p">)</span>
417
+ </span><span id="line-226"> <span class="bp">self</span><span class="o">.</span><span class="n">_host</span> <span class="o">=</span> <span class="n">login_response</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;host&quot;</span><span class="p">)</span>
418
+ </span><span id="line-227"> <span class="bp">self</span><span class="o">.</span><span class="n">_uid</span> <span class="o">=</span> <span class="n">login_response</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;user&quot;</span><span class="p">,</span> <span class="p">{})</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;id&quot;</span><span class="p">)</span>
419
+ </span><span id="line-228"> <span class="bp">self</span><span class="o">.</span><span class="n">_nm</span> <span class="o">=</span> <span class="n">login_response</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;user&quot;</span><span class="p">,</span> <span class="p">{})</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;nm&quot;</span><span class="p">)</span>
420
+ </span><span id="line-229"> <span class="bp">self</span><span class="o">.</span><span class="n">_username</span> <span class="o">=</span> <span class="n">login_response</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;au&quot;</span><span class="p">)</span>
421
+ </span><span id="line-230"> <span class="bp">self</span><span class="o">.</span><span class="n">_wsdk_version</span> <span class="o">=</span> <span class="n">login_response</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;wsdk_version&quot;</span><span class="p">)</span></div>
422
+
423
+ </span></code></pre></div>
424
+ </div></div>
425
+ </main>
426
+ </div>
427
+ </div><footer class="py-6 border-t border-border md:py-0">
428
+ <div class="container flex flex-col items-center justify-between gap-4 md:h-24 md:flex-row">
429
+ <div class="flex flex-col items-center gap-4 px-8 md:flex-row md:gap-2 md:px-0">
430
+ <p class="text-sm leading-loose text-center text-muted-foreground md:text-left">© 2025, Terminus GPS, LLC&nbsp;Built with <a class="font-medium underline underline-offset-4"
431
+ href="https://www.sphinx-doc.org"
432
+ rel="noreferrer">Sphinx 8.2.3</a></p>
433
+ </div>
434
+ </div>
435
+ </footer>
436
+ </div>
437
+
438
+ <script src="../../../_static/documentation_options.js?v=71264fca"></script>
439
+ <script src="../../../_static/doctools.js?v=9bcbadda"></script>
440
+ <script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
441
+ <script defer="defer" src="../../../_static/theme.js?v=073f68d9"></script>
442
+
443
+ </body>
444
+ </html>