Browse Source

Dev (#29)

* Remove ide stuff from tracking (#25)

* remove IDE files from tracking

* teach git how to ignore IDE files

* remove .DS_Store files from tracking

* Added Command bot example (#27)

* remove IDE files from tracking

* teach git how to ignore IDE files

* remove .DS_Store files from tracking

* Update version

* bring code to new version

* Reorganize configuration entries and add command bot entries

* change config variable names

* update database stuff to contain data for commands bot

* implement hello command

* implement help command

* implement start command

* implement stop command

* register Commandshandler

* rename WebHookExampleHandlers

* rename webhook handler

* 1. Update to version v2.3.3.4
master
Ruben Bermudez 10 years ago
committed by GitHub
parent
commit
9d9814518a
  1. BIN
      .DS_Store
  2. 10
      .gitignore
  3. 1
      .idea/.name
  4. 32
      .idea/compiler.xml
  5. 3
      .idea/copyright/profiles_settings.xml
  6. 18
      .idea/dataSources.xml
  7. 7
      .idea/encodings.xml
  8. 49
      .idea/inspectionProfiles/Project_Default.xml
  9. 7
      .idea/inspectionProfiles/profiles_settings.xml
  10. 71
      .idea/jsLinters/jshint.xml
  11. 13
      .idea/libraries/Maven__com_fasterxml_jackson_core_jackson_annotations_2_5_4.xml
  12. 13
      .idea/libraries/Maven__com_fasterxml_jackson_core_jackson_core_2_5_4.xml
  13. 13
      .idea/libraries/Maven__com_fasterxml_jackson_core_jackson_databind_2_5_4.xml
  14. 13
      .idea/libraries/Maven__com_fasterxml_jackson_jaxrs_jackson_jaxrs_base_2_5_4.xml
  15. 13
      .idea/libraries/Maven__com_fasterxml_jackson_jaxrs_jackson_jaxrs_json_provider_2_5_4.xml
  16. 13
      .idea/libraries/Maven__com_fasterxml_jackson_module_jackson_module_jaxb_annotations_2_5_4.xml
  17. 13
      .idea/libraries/Maven__com_github_rubenlagus_TelegramBots_v2_3_3_2.xml
  18. 13
      .idea/libraries/Maven__com_sun_jersey_jersey_bundle_1_19_1.xml
  19. 13
      .idea/libraries/Maven__com_sun_jersey_jersey_core_1_19_1.xml
  20. 13
      .idea/libraries/Maven__com_sun_jersey_jersey_grizzly2_1_19_1.xml
  21. 13
      .idea/libraries/Maven__com_sun_jersey_jersey_grizzly2_servlet_1_19_1.xml
  22. 13
      .idea/libraries/Maven__com_sun_jersey_jersey_server_1_19_1.xml
  23. 13
      .idea/libraries/Maven__com_sun_jersey_jersey_servlet_1_19_1.xml
  24. 13
      .idea/libraries/Maven__commons_codec_commons_codec_1_9.xml
  25. 13
      .idea/libraries/Maven__commons_io_commons_io_2_5.xml
  26. 13
      .idea/libraries/Maven__commons_logging_commons_logging_1_2.xml
  27. 13
      .idea/libraries/Maven__javax_annotation_javax_annotation_api_1_2.xml
  28. 13
      .idea/libraries/Maven__javax_servlet_javax_servlet_api_3_0_1.xml
  29. 13
      .idea/libraries/Maven__javax_validation_validation_api_1_1_0_Final.xml
  30. 13
      .idea/libraries/Maven__javax_ws_rs_javax_ws_rs_api_2_0_1.xml
  31. 13
      .idea/libraries/Maven__javax_ws_rs_jsr311_api_1_1_1.xml
  32. 13
      .idea/libraries/Maven__mysql_mysql_connector_java_5_1_39.xml
  33. 13
      .idea/libraries/Maven__org_apache_httpcomponents_httpclient_4_5_2.xml
  34. 13
      .idea/libraries/Maven__org_apache_httpcomponents_httpcore_4_4_4.xml
  35. 13
      .idea/libraries/Maven__org_apache_httpcomponents_httpmime_4_5_2.xml
  36. 13
      .idea/libraries/Maven__org_glassfish_grizzly_grizzly_framework_2_3_23.xml
  37. 13
      .idea/libraries/Maven__org_glassfish_grizzly_grizzly_http_2_3_23.xml
  38. 13
      .idea/libraries/Maven__org_glassfish_grizzly_grizzly_http_server_2_3_23.xml
  39. 13
      .idea/libraries/Maven__org_glassfish_grizzly_grizzly_http_servlet_2_2_16.xml
  40. 13
      .idea/libraries/Maven__org_glassfish_hk2_external_aopalliance_repackaged_2_4_0_b34.xml
  41. 13
      .idea/libraries/Maven__org_glassfish_hk2_external_javax_inject_2_4_0_b34.xml
  42. 13
      .idea/libraries/Maven__org_glassfish_hk2_hk2_api_2_4_0_b34.xml
  43. 13
      .idea/libraries/Maven__org_glassfish_hk2_hk2_locator_2_4_0_b34.xml
  44. 13
      .idea/libraries/Maven__org_glassfish_hk2_hk2_utils_2_4_0_b34.xml
  45. 13
      .idea/libraries/Maven__org_glassfish_hk2_osgi_resource_locator_1_0_1.xml
  46. 13
      .idea/libraries/Maven__org_glassfish_jersey_bundles_repackaged_jersey_guava_2_23.xml
  47. 13
      .idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_grizzly2_http_2_23.xml
  48. 13
      .idea/libraries/Maven__org_glassfish_jersey_core_jersey_client_2_23.xml
  49. 13
      .idea/libraries/Maven__org_glassfish_jersey_core_jersey_common_2_23.xml
  50. 13
      .idea/libraries/Maven__org_glassfish_jersey_core_jersey_server_2_23.xml
  51. 13
      .idea/libraries/Maven__org_glassfish_jersey_ext_jersey_entity_filtering_2_23.xml
  52. 13
      .idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_jaxb_2_23.xml
  53. 13
      .idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_json_jackson_2_23.xml
  54. 13
      .idea/libraries/Maven__org_javassist_javassist_3_18_1_GA.xml
  55. 13
      .idea/libraries/Maven__org_json_json_20160212.xml
  56. 13
      .idea/libraries/Maven__org_jsoup_jsoup_1_9_2.xml
  57. 77
      .idea/misc.xml
  58. 8
      .idea/modules.xml
  59. 11
      .idea/resourceBundles.xml
  60. 124
      .idea/uiDesigner.xml
  61. 6
      .idea/vcs.xml
  62. 2124
      .idea/workspace.xml
  63. 61
      BotAPi.iml
  64. 2
      pom.xml
  65. BIN
      src/.DS_Store
  66. BIN
      src/main/.DS_Store
  67. BIN
      src/main/java/.DS_Store
  68. 37
      src/main/java/org/telegram/BotConfig.java
  69. 9
      src/main/java/org/telegram/Main.java
  70. 55
      src/main/java/org/telegram/commands/HelloCommand.java
  71. 54
      src/main/java/org/telegram/commands/HelpCommand.java
  72. 51
      src/main/java/org/telegram/commands/StartCommand.java
  73. 48
      src/main/java/org/telegram/commands/StopCommand.java
  74. 4
      src/main/java/org/telegram/database/CreationStrings.java
  75. 40
      src/main/java/org/telegram/database/DatabaseManager.java
  76. 26
      src/main/java/org/telegram/services/TransifexService.java
  77. 17
      src/main/java/org/telegram/updateshandlers/ChannelHandlers.java
  78. 82
      src/main/java/org/telegram/updateshandlers/CommandsHandler.java
  79. 23
      src/main/java/org/telegram/updateshandlers/DirectionsHandlers.java
  80. 16
      src/main/java/org/telegram/updateshandlers/FilesHandlers.java
  81. 4
      src/main/java/org/telegram/updateshandlers/RaeHandlers.java
  82. 4
      src/main/java/org/telegram/updateshandlers/TransifexHandlers.java
  83. 151
      src/main/java/org/telegram/updateshandlers/WeatherHandlers.java
  84. 6
      src/main/java/org/telegram/updateshandlers/WebHookExampleHandlers.java

BIN
.DS_Store

Binary file not shown.

10
.gitignore

@ -22,9 +22,13 @@ buildNumber.properties
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid* hs_err_pid*
# unneeded files ### IDE files
.idea/dataSources.* .idea/
.idea/workspace.xml copyright/
*.iml
#File System specific files
.DS_STORE
# logs files # logs files
*.log *.log

1
.idea/.name

@ -1 +0,0 @@
BotAPi

32
.idea/compiler.xml

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<option name="DEFAULT_COMPILER" value="Javac" />
<resourceExtensions />
<wildcardResourcePatterns>
<entry name="!?*.java" />
<entry name="!?*.form" />
<entry name="!?*.class" />
<entry name="!?*.groovy" />
<entry name="!?*.scala" />
<entry name="!?*.flex" />
<entry name="!?*.kt" />
<entry name="!?*.clj" />
</wildcardResourcePatterns>
<annotationProcessing>
<profile default="true" name="Default" enabled="false">
<processorPath useClasspath="true" />
</profile>
<profile default="false" name="Maven default annotation processors profile" enabled="true">
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<processorPath useClasspath="true" />
<module name="BotAPi" />
</profile>
</annotationProcessing>
<bytecodeTargetLevel target="1.8">
<module name="BotAPi" target="1.8" />
</bytecodeTargetLevel>
</component>
</project>

3
.idea/copyright/profiles_settings.xml

@ -1,3 +0,0 @@
<component name="CopyrightManager">
<settings default="" />
</component>

18
.idea/dataSources.xml

@ -1,18 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DataSourceManagerImpl" format="xml" hash="1958173603">
<data-source source="LOCAL" name="MySQL - telegrambot@localhost" uuid="2ce462a4-6cfe-4867-8503-3b86bc273db1">
<driver-ref>mysql</driver-ref>
<synchronize>true</synchronize>
<jdbc-driver>com.mysql.jdbc.Driver</jdbc-driver>
<jdbc-url>jdbc:mysql://localhost:3306/telegrambot</jdbc-url>
<driver-properties>
<property name="zeroDateTimeBehavior" value="convertToNull" />
<property name="tinyInt1isBit" value="false" />
<property name="characterEncoding" value="utf8" />
<property name="characterSetResults" value="utf8" />
<property name="yearIsDateType" value="false" />
</driver-properties>
</data-source>
</component>
</project>

7
.idea/encodings.xml

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" defaultCharsetForPropertiesFiles="UTF-8">
<file url="file://$PROJECT_DIR$" charset="UTF-8" />
<file url="PROJECT" charset="UTF-8" />
</component>
</project>

49
.idea/inspectionProfiles/Project_Default.xml

@ -1,49 +0,0 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<option name="myLocal" value="true" />
<inspection_tool class="FieldMayBeFinal" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="FieldMayBeStatic" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="JSHint" enabled="true" level="ERROR" enabled_by_default="true" />
<inspection_tool class="JSLint" enabled="true" level="ERROR" enabled_by_default="true" />
<inspection_tool class="JavaDoc" enabled="true" level="WARNING" enabled_by_default="true">
<option name="TOP_LEVEL_CLASS_OPTIONS">
<value>
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
<option name="REQUIRED_TAGS" value="" />
</value>
</option>
<option name="INNER_CLASS_OPTIONS">
<value>
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
<option name="REQUIRED_TAGS" value="" />
</value>
</option>
<option name="METHOD_OPTIONS">
<value>
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
<option name="REQUIRED_TAGS" value="@return@param@throws or @exception" />
</value>
</option>
<option name="FIELD_OPTIONS">
<value>
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
<option name="REQUIRED_TAGS" value="" />
</value>
</option>
<option name="IGNORE_DEPRECATED" value="false" />
<option name="IGNORE_JAVADOC_PERIOD" value="true" />
<option name="IGNORE_DUPLICATED_THROWS" value="false" />
<option name="IGNORE_POINT_TO_ITSELF" value="false" />
<option name="myAdditionalJavadocTags" value="date,brief" />
</inspection_tool>
<inspection_tool class="LoggerInitializedWithForeignClass" enabled="false" level="WARNING" enabled_by_default="false">
<option name="loggerClassName" value="org.apache.log4j.Logger,org.slf4j.LoggerFactory,org.apache.commons.logging.LogFactory,java.util.logging.Logger" />
<option name="loggerFactoryMethodName" value="getLogger,getLogger,getLog,getLogger" />
</inspection_tool>
<inspection_tool class="MethodMayBeStatic" enabled="true" level="WARNING" enabled_by_default="true">
<option name="m_onlyPrivateOrFinal" value="false" />
<option name="m_ignoreEmptyMethods" value="true" />
</inspection_tool>
</profile>
</component>

7
.idea/inspectionProfiles/profiles_settings.xml

@ -1,7 +0,0 @@
<component name="InspectionProjectProfileManager">
<settings>
<option name="PROJECT_PROFILE" value="Project Default" />
<option name="USE_PROJECT_PROFILE" value="true" />
<version value="1.0" />
</settings>
</component>

71
.idea/jsLinters/jshint.xml

@ -1,71 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="JSHintConfiguration" version="2.6.3" use-config-file="false">
<option asi="false" />
<option bitwise="false" />
<option boss="false" />
<option browser="true" />
<option camelcase="true" />
<option couch="false" />
<option curly="true" />
<option debug="false" />
<option devel="false" />
<option dojo="false" />
<option eqeqeq="true" />
<option eqnull="false" />
<option es3="false" />
<option esnext="false" />
<option evil="false" />
<option expr="false" />
<option forin="true" />
<option freeze="false" />
<option funcscope="false" />
<option gcl="false" />
<option globalstrict="false" />
<option immed="false" />
<option iterator="false" />
<option jquery="false" />
<option lastsemic="false" />
<option latedef="true" />
<option laxbreak="false" />
<option laxcomma="false" />
<option loopfunc="false" />
<option maxerr="50" />
<option maxlen="80" />
<option mootools="false" />
<option moz="false" />
<option multistr="false" />
<option newcap="false" />
<option noarg="true" />
<option node="false" />
<option noempty="true" />
<option nomen="false" />
<option nonbsp="true" />
<option nonew="true" />
<option nonstandard="false" />
<option notypeof="false" />
<option noyield="false" />
<option onevar="false" />
<option passfail="false" />
<option phantom="false" />
<option plusplus="false" />
<option proto="false" />
<option prototypejs="false" />
<option quotmark="false" />
<option rhino="false" />
<option scripturl="false" />
<option shadow="false" />
<option smarttabs="false" />
<option strict="true" />
<option sub="false" />
<option supernew="false" />
<option trailing="true" />
<option undef="true" />
<option unused="true" />
<option validthis="false" />
<option white="false" />
<option worker="false" />
<option wsh="false" />
<option yui="false" />
</component>
</project>

13
.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_annotations_2_5_4.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-annotations/2.5.4/jackson-annotations-2.5.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-annotations/2.5.4/jackson-annotations-2.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-annotations/2.5.4/jackson-annotations-2.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_core_2_5_4.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.core:jackson-core:2.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-core/2.5.4/jackson-core-2.5.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-core/2.5.4/jackson-core-2.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-core/2.5.4/jackson-core-2.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_databind_2_5_4.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.core:jackson-databind:2.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-databind/2.5.4/jackson-databind-2.5.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-databind/2.5.4/jackson-databind-2.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-databind/2.5.4/jackson-databind-2.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_fasterxml_jackson_jaxrs_jackson_jaxrs_base_2_5_4.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.jaxrs:jackson-jaxrs-base:2.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.5.4/jackson-jaxrs-base-2.5.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.5.4/jackson-jaxrs-base-2.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.5.4/jackson-jaxrs-base-2.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_fasterxml_jackson_jaxrs_jackson_jaxrs_json_provider_2_5_4.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:2.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.5.4/jackson-jaxrs-json-provider-2.5.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.5.4/jackson-jaxrs-json-provider-2.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.5.4/jackson-jaxrs-json-provider-2.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_fasterxml_jackson_module_jackson_module_jaxb_annotations_2_5_4.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.module:jackson-module-jaxb-annotations:2.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.5.4/jackson-module-jaxb-annotations-2.5.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.5.4/jackson-module-jaxb-annotations-2.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.5.4/jackson-module-jaxb-annotations-2.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_github_rubenlagus_TelegramBots_v2_3_3_2.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.github.rubenlagus:TelegramBots:v2.3.3.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/github/rubenlagus/TelegramBots/v2.3.3.2/TelegramBots-v2.3.3.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/github/rubenlagus/TelegramBots/v2.3.3.2/TelegramBots-v2.3.3.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/github/rubenlagus/TelegramBots/v2.3.3.2/TelegramBots-v2.3.3.2-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_sun_jersey_jersey_bundle_1_19_1.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.sun.jersey:jersey-bundle:1.19.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-bundle/1.19.1/jersey-bundle-1.19.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-bundle/1.19.1/jersey-bundle-1.19.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-bundle/1.19.1/jersey-bundle-1.19.1-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_sun_jersey_jersey_core_1_19_1.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.sun.jersey:jersey-core:1.19.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-core/1.19.1/jersey-core-1.19.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-core/1.19.1/jersey-core-1.19.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-core/1.19.1/jersey-core-1.19.1-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_sun_jersey_jersey_grizzly2_1_19_1.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.sun.jersey:jersey-grizzly2:1.19.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-grizzly2/1.19.1/jersey-grizzly2-1.19.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-grizzly2/1.19.1/jersey-grizzly2-1.19.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-grizzly2/1.19.1/jersey-grizzly2-1.19.1-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_sun_jersey_jersey_grizzly2_servlet_1_19_1.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.sun.jersey:jersey-grizzly2-servlet:1.19.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-grizzly2-servlet/1.19.1/jersey-grizzly2-servlet-1.19.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-grizzly2-servlet/1.19.1/jersey-grizzly2-servlet-1.19.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-grizzly2-servlet/1.19.1/jersey-grizzly2-servlet-1.19.1-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_sun_jersey_jersey_server_1_19_1.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.sun.jersey:jersey-server:1.19.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-server/1.19.1/jersey-server-1.19.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-server/1.19.1/jersey-server-1.19.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-server/1.19.1/jersey-server-1.19.1-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__com_sun_jersey_jersey_servlet_1_19_1.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.sun.jersey:jersey-servlet:1.19.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-servlet/1.19.1/jersey-servlet-1.19.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-servlet/1.19.1/jersey-servlet-1.19.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/sun/jersey/jersey-servlet/1.19.1/jersey-servlet-1.19.1-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__commons_codec_commons_codec_1_9.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: commons-codec:commons-codec:1.9">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/commons-codec/commons-codec/1.9/commons-codec-1.9.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/commons-codec/commons-codec/1.9/commons-codec-1.9-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/commons-codec/commons-codec/1.9/commons-codec-1.9-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__commons_io_commons_io_2_5.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: commons-io:commons-io:2.5">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.5/commons-io-2.5.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.5/commons-io-2.5-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.5/commons-io-2.5-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__commons_logging_commons_logging_1_2.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: commons-logging:commons-logging:1.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/commons-logging/commons-logging/1.2/commons-logging-1.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/commons-logging/commons-logging/1.2/commons-logging-1.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/commons-logging/commons-logging/1.2/commons-logging-1.2-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__javax_annotation_javax_annotation_api_1_2.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: javax.annotation:javax.annotation-api:1.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__javax_servlet_javax_servlet_api_3_0_1.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: javax.servlet:javax.servlet-api:3.0.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/javax/servlet/javax.servlet-api/3.0.1/javax.servlet-api-3.0.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/javax/servlet/javax.servlet-api/3.0.1/javax.servlet-api-3.0.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/javax/servlet/javax.servlet-api/3.0.1/javax.servlet-api-3.0.1-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__javax_validation_validation_api_1_1_0_Final.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: javax.validation:validation-api:1.1.0.Final">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__javax_ws_rs_javax_ws_rs_api_2_0_1.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: javax.ws.rs:javax.ws.rs-api:2.0.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/javax/ws/rs/javax.ws.rs-api/2.0.1/javax.ws.rs-api-2.0.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/javax/ws/rs/javax.ws.rs-api/2.0.1/javax.ws.rs-api-2.0.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/javax/ws/rs/javax.ws.rs-api/2.0.1/javax.ws.rs-api-2.0.1-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__javax_ws_rs_jsr311_api_1_1_1.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: javax.ws.rs:jsr311-api:1.1.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/javax/ws/rs/jsr311-api/1.1.1/jsr311-api-1.1.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/javax/ws/rs/jsr311-api/1.1.1/jsr311-api-1.1.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/javax/ws/rs/jsr311-api/1.1.1/jsr311-api-1.1.1-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__mysql_mysql_connector_java_5_1_39.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: mysql:mysql-connector-java:5.1.39">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/mysql/mysql-connector-java/5.1.39/mysql-connector-java-5.1.39.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/mysql/mysql-connector-java/5.1.39/mysql-connector-java-5.1.39-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/mysql/mysql-connector-java/5.1.39/mysql-connector-java-5.1.39-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_apache_httpcomponents_httpclient_4_5_2.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.apache.httpcomponents:httpclient:4.5.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpclient/4.5.2/httpclient-4.5.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpclient/4.5.2/httpclient-4.5.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpclient/4.5.2/httpclient-4.5.2-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_apache_httpcomponents_httpcore_4_4_4.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.apache.httpcomponents:httpcore:4.4.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpcore/4.4.4/httpcore-4.4.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpcore/4.4.4/httpcore-4.4.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpcore/4.4.4/httpcore-4.4.4-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_apache_httpcomponents_httpmime_4_5_2.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.apache.httpcomponents:httpmime:4.5.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpmime/4.5.2/httpmime-4.5.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpmime/4.5.2/httpmime-4.5.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpmime/4.5.2/httpmime-4.5.2-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_grizzly_grizzly_framework_2_3_23.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.grizzly:grizzly-framework:2.3.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-framework/2.3.23/grizzly-framework-2.3.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-framework/2.3.23/grizzly-framework-2.3.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-framework/2.3.23/grizzly-framework-2.3.23-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_grizzly_grizzly_http_2_3_23.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.grizzly:grizzly-http:2.3.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-http/2.3.23/grizzly-http-2.3.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-http/2.3.23/grizzly-http-2.3.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-http/2.3.23/grizzly-http-2.3.23-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_grizzly_grizzly_http_server_2_3_23.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.grizzly:grizzly-http-server:2.3.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-http-server/2.3.23/grizzly-http-server-2.3.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-http-server/2.3.23/grizzly-http-server-2.3.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-http-server/2.3.23/grizzly-http-server-2.3.23-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_grizzly_grizzly_http_servlet_2_2_16.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.grizzly:grizzly-http-servlet:2.2.16">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-http-servlet/2.2.16/grizzly-http-servlet-2.2.16.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-http-servlet/2.2.16/grizzly-http-servlet-2.2.16-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/grizzly/grizzly-http-servlet/2.2.16/grizzly-http-servlet-2.2.16-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_hk2_external_aopalliance_repackaged_2_4_0_b34.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.hk2.external:aopalliance-repackaged:2.4.0-b34">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/aopalliance-repackaged/2.4.0-b34/aopalliance-repackaged-2.4.0-b34.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/aopalliance-repackaged/2.4.0-b34/aopalliance-repackaged-2.4.0-b34-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/aopalliance-repackaged/2.4.0-b34/aopalliance-repackaged-2.4.0-b34-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_hk2_external_javax_inject_2_4_0_b34.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.hk2.external:javax.inject:2.4.0-b34">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/javax.inject/2.4.0-b34/javax.inject-2.4.0-b34.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/javax.inject/2.4.0-b34/javax.inject-2.4.0-b34-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/javax.inject/2.4.0-b34/javax.inject-2.4.0-b34-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_hk2_hk2_api_2_4_0_b34.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.hk2:hk2-api:2.4.0-b34">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-api/2.4.0-b34/hk2-api-2.4.0-b34.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-api/2.4.0-b34/hk2-api-2.4.0-b34-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-api/2.4.0-b34/hk2-api-2.4.0-b34-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_hk2_hk2_locator_2_4_0_b34.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.hk2:hk2-locator:2.4.0-b34">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-locator/2.4.0-b34/hk2-locator-2.4.0-b34.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-locator/2.4.0-b34/hk2-locator-2.4.0-b34-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-locator/2.4.0-b34/hk2-locator-2.4.0-b34-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_hk2_hk2_utils_2_4_0_b34.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.hk2:hk2-utils:2.4.0-b34">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-utils/2.4.0-b34/hk2-utils-2.4.0-b34.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-utils/2.4.0-b34/hk2-utils-2.4.0-b34-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-utils/2.4.0-b34/hk2-utils-2.4.0-b34-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_hk2_osgi_resource_locator_1_0_1.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.hk2:osgi-resource-locator:1.0.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/osgi-resource-locator/1.0.1/osgi-resource-locator-1.0.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/osgi-resource-locator/1.0.1/osgi-resource-locator-1.0.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/osgi-resource-locator/1.0.1/osgi-resource-locator-1.0.1-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_jersey_bundles_repackaged_jersey_guava_2_23.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.jersey.bundles.repackaged:jersey-guava:2.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/bundles/repackaged/jersey-guava/2.23/jersey-guava-2.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/bundles/repackaged/jersey-guava/2.23/jersey-guava-2.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/bundles/repackaged/jersey-guava/2.23/jersey-guava-2.23-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_grizzly2_http_2_23.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.jersey.containers:jersey-container-grizzly2-http:2.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-grizzly2-http/2.23/jersey-container-grizzly2-http-2.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-grizzly2-http/2.23/jersey-container-grizzly2-http-2.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-grizzly2-http/2.23/jersey-container-grizzly2-http-2.23-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_jersey_core_jersey_client_2_23.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.jersey.core:jersey-client:2.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-client/2.23/jersey-client-2.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-client/2.23/jersey-client-2.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-client/2.23/jersey-client-2.23-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_jersey_core_jersey_common_2_23.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.jersey.core:jersey-common:2.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-common/2.23/jersey-common-2.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-common/2.23/jersey-common-2.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-common/2.23/jersey-common-2.23-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_jersey_core_jersey_server_2_23.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.jersey.core:jersey-server:2.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-server/2.23/jersey-server-2.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-server/2.23/jersey-server-2.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-server/2.23/jersey-server-2.23-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_jersey_ext_jersey_entity_filtering_2_23.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.jersey.ext:jersey-entity-filtering:2.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/ext/jersey-entity-filtering/2.23/jersey-entity-filtering-2.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/ext/jersey-entity-filtering/2.23/jersey-entity-filtering-2.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/ext/jersey-entity-filtering/2.23/jersey-entity-filtering-2.23-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_jaxb_2_23.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.jersey.media:jersey-media-jaxb:2.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-jaxb/2.23/jersey-media-jaxb-2.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-jaxb/2.23/jersey-media-jaxb-2.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-jaxb/2.23/jersey-media-jaxb-2.23-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_json_jackson_2_23.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.glassfish.jersey.media:jersey-media-json-jackson:2.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-json-jackson/2.23/jersey-media-json-jackson-2.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-json-jackson/2.23/jersey-media-json-jackson-2.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-json-jackson/2.23/jersey-media-json-jackson-2.23-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_javassist_javassist_3_18_1_GA.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.javassist:javassist:3.18.1-GA">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.18.1-GA/javassist-3.18.1-GA.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.18.1-GA/javassist-3.18.1-GA-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.18.1-GA/javassist-3.18.1-GA-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_json_json_20160212.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.json:json:20160212">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/json/json/20160212/json-20160212.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/json/json/20160212/json-20160212-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/json/json/20160212/json-20160212-sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/Maven__org_jsoup_jsoup_1_9_2.xml

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.jsoup:jsoup:1.9.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jsoup/jsoup/1.9.2/jsoup-1.9.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jsoup/jsoup/1.9.2/jsoup-1.9.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jsoup/jsoup/1.9.2/jsoup-1.9.2-sources.jar!/" />
</SOURCES>
</library>
</component>

77
.idea/misc.xml

@ -1,77 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ClientPropertiesManager">
<properties class="javax.swing.AbstractButton">
<property name="hideActionText" class="java.lang.Boolean" />
</properties>
<properties class="javax.swing.JComponent">
<property name="html.disable" class="java.lang.Boolean" />
</properties>
<properties class="javax.swing.JEditorPane">
<property name="JEditorPane.w3cLengthUnits" class="java.lang.Boolean" />
<property name="JEditorPane.honorDisplayProperties" class="java.lang.Boolean" />
<property name="charset" class="java.lang.String" />
</properties>
<properties class="javax.swing.JList">
<property name="List.isFileList" class="java.lang.Boolean" />
</properties>
<properties class="javax.swing.JPasswordField">
<property name="JPasswordField.cutCopyAllowed" class="java.lang.Boolean" />
</properties>
<properties class="javax.swing.JSlider">
<property name="Slider.paintThumbArrowShape" class="java.lang.Boolean" />
<property name="JSlider.isFilled" class="java.lang.Boolean" />
</properties>
<properties class="javax.swing.JTable">
<property name="Table.isFileList" class="java.lang.Boolean" />
<property name="JTable.autoStartsEdit" class="java.lang.Boolean" />
<property name="terminateEditOnFocusLost" class="java.lang.Boolean" />
</properties>
<properties class="javax.swing.JToolBar">
<property name="JToolBar.isRollover" class="java.lang.Boolean" />
</properties>
<properties class="javax.swing.JTree">
<property name="JTree.lineStyle" class="java.lang.String" />
</properties>
<properties class="javax.swing.text.JTextComponent">
<property name="caretAspectRatio" class="java.lang.Double" />
<property name="caretWidth" class="java.lang.Integer" />
</properties>
</component>
<component name="EntryPointsManager">
<entry_points version="2.0" />
</component>
<component name="JSLintConfiguration" json="true">
<option indent="4" />
<option maxerr="50" />
<option maxlen="80" />
<option todo="true" />
<option unparam="true" />
<option vars="true" />
<option white="true" />
</component>
<component name="JsBowerSettings">
<exe-path>/usr/local/bin/bower</exe-path>
<config-path />
</component>
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
<option value="$PROJECT_DIR$/pom.xml" />
</list>
</option>
</component>
<component name="ProjectLevelVcsManager" settingsEditedManually="false">
<OptionsSetting value="true" id="Add" />
<OptionsSetting value="true" id="Remove" />
<OptionsSetting value="true" id="Checkout" />
<OptionsSetting value="true" id="Update" />
<OptionsSetting value="true" id="Status" />
<OptionsSetting value="true" id="Edit" />
<ConfirmationsSetting value="0" id="Add" />
<ConfirmationsSetting value="0" id="Remove" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" assert-keyword="true" jdk-15="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

8
.idea/modules.xml

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/BotAPi.iml" filepath="$PROJECT_DIR$/BotAPi.iml" />
</modules>
</component>
</project>

11
.idea/resourceBundles.xml

@ -1,11 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ResourceBundleManager">
<file url="file://$PROJECT_DIR$/src/main/resources/localisation/strings.properties" />
<file url="file://$PROJECT_DIR$/src/main/resources/localisation/strings_eo.properties" />
<file url="file://$PROJECT_DIR$/src/main/resources/localisation/strings_es.properties" />
<file url="file://$PROJECT_DIR$/src/main/resources/localisation/strings_it.properties" />
<file url="file://$PROJECT_DIR$/src/main/resources/localisation/strings_nl.properties" />
<file url="file://$PROJECT_DIR$/src/main/resources/localisation/strings_pt.properties" />
</component>
</project>

124
.idea/uiDesigner.xml

@ -1,124 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Palette2">
<group name="Swing">
<item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
</item>
<item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
</item>
<item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
<default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
</item>
<item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
<initial-values>
<property name="text" value="Button" />
</initial-values>
</item>
<item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="RadioButton" />
</initial-values>
</item>
<item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="CheckBox" />
</initial-values>
</item>
<item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
<initial-values>
<property name="text" value="Label" />
</initial-values>
</item>
<item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
</item>
<item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
</item>
<item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
<preferred-size width="-1" height="20" />
</default-constraints>
</item>
<item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
</item>
<item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
</item>
</group>
</component>
</project>

6
.idea/vcs.xml

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

2124
.idea/workspace.xml

File diff suppressed because it is too large

61
BotAPi.iml

@ -1,61 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8" inherit-compiler-output="false">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Maven: com.github.rubenlagus:TelegramBots:v2.3.3.2" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.jersey.containers:jersey-container-grizzly2-http:2.23" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.hk2.external:javax.inject:2.4.0-b34" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.grizzly:grizzly-http-server:2.3.23" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.grizzly:grizzly-http:2.3.23" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.grizzly:grizzly-framework:2.3.23" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.jersey.core:jersey-common:2.23" level="project" />
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.2" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.jersey.bundles.repackaged:jersey-guava:2.23" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.hk2:hk2-api:2.4.0-b34" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.hk2:hk2-utils:2.4.0-b34" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.hk2.external:aopalliance-repackaged:2.4.0-b34" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.hk2:hk2-locator:2.4.0-b34" level="project" />
<orderEntry type="library" name="Maven: org.javassist:javassist:3.18.1-GA" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.hk2:osgi-resource-locator:1.0.1" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.jersey.core:jersey-server:2.23" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.jersey.core:jersey-client:2.23" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.jersey.media:jersey-media-jaxb:2.23" level="project" />
<orderEntry type="library" name="Maven: javax.validation:validation-api:1.1.0.Final" level="project" />
<orderEntry type="library" name="Maven: javax.ws.rs:javax.ws.rs-api:2.0.1" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.jersey.media:jersey-media-json-jackson:2.23" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.jersey.ext:jersey-entity-filtering:2.23" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.jaxrs:jackson-jaxrs-base:2.5.4" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.5.4" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.5.4" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:2.5.4" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-jaxb-annotations:2.5.4" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.5.4" level="project" />
<orderEntry type="library" name="Maven: com.sun.jersey:jersey-bundle:1.19.1" level="project" />
<orderEntry type="library" name="Maven: javax.ws.rs:jsr311-api:1.1.1" level="project" />
<orderEntry type="library" name="Maven: com.sun.jersey:jersey-grizzly2-servlet:1.19.1" level="project" />
<orderEntry type="library" name="Maven: org.glassfish.grizzly:grizzly-http-servlet:2.2.16" level="project" />
<orderEntry type="library" name="Maven: com.sun.jersey:jersey-grizzly2:1.19.1" level="project" />
<orderEntry type="library" name="Maven: com.sun.jersey:jersey-server:1.19.1" level="project" />
<orderEntry type="library" name="Maven: com.sun.jersey:jersey-core:1.19.1" level="project" />
<orderEntry type="library" name="Maven: javax.servlet:javax.servlet-api:3.0.1" level="project" />
<orderEntry type="library" name="Maven: com.sun.jersey:jersey-servlet:1.19.1" level="project" />
<orderEntry type="library" name="Maven: org.json:json:20160212" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.5" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.4" level="project" />
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.9" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpmime:4.5.2" level="project" />
<orderEntry type="library" name="Maven: mysql:mysql-connector-java:5.1.39" level="project" />
<orderEntry type="library" name="Maven: org.jsoup:jsoup:1.9.2" level="project" />
</component>
</module>

2
pom.xml

@ -25,7 +25,7 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<httpcompontents.version>4.5.2</httpcompontents.version> <httpcompontents.version>4.5.2</httpcompontents.version>
<telegrambots.version>v2.3.3.2</telegrambots.version> <telegrambots.version>v2.3.3.4</telegrambots.version>
<json.version>20160212</json.version> <json.version>20160212</json.version>
<mysql.version>5.1.39</mysql.version> <mysql.version>5.1.39</mysql.version>
</properties> </properties>

BIN
src/.DS_Store

Binary file not shown.

BIN
src/main/.DS_Store

Binary file not shown.

BIN
src/main/java/.DS_Store

Binary file not shown.

37
src/main/java/org/telegram/BotConfig.java

@ -7,18 +7,27 @@ package org.telegram;
* @date 20 of June of 2015 * @date 20 of June of 2015
*/ */
public class BotConfig { public class BotConfig {
public static final String TOKENWEATHER = "<token>"; public static final String WEATHER_TOKEN = "<token>";
public static final String USERNAMEWEATHER = "weatherbot"; public static final String WEATHER_USER = "weatherbot";
public static final String TOKENTRANSIFEX = "<token>";
public static final String USERNAMETRANSIFEX = "TGlanguagesbot"; public static final String TRANSIFEX_TOKEN = "<token>";
public static final String TOKENFILES = "<token>"; public static final String TRANSIFEX_USER = "TGlanguagesbot";
public static final String USERNAMEFILES = "filesbot";
public static final String TOKENDIRECTIONS = "<token>"; public static final String FILES_TOKEN = "<token>";
public static final String USERNAMEDIRECTIONS = "directionsbot"; public static final String FILES_USER = "filesbot";
public static final String TOKENCHANNEL = "<token>";
public static final String USERNAMECHANNEL = "channelupdatesbot"; public static final String DIRECTIONS_TOKEN = "<token>";
public static final String TOKENRAE = "<token>"; public static final String DIRECTIONS_USER = "directionsbot";
public static final String USERNAMERAE = "raebot";
public static final String TOKENWEBHOOK = "<token>"; public static final String CHANNEL_TOKEN = "<token>";
public static final String USERNAMEWEBHOOK = "webhooksamplebot"; public static final String CHANNEL_USER = "channelupdatesbot";
public static final String RAE_TOKEN = "<token>";
public static final String RAE_USER = "raebot";
public static final String WEBHOOK_TOKEN = "<token>";
public static final String WEBHOOK_USER = "webhooksamplebot";
public static final String COMMANDS_TOKEN = "<token>";
public static final String COMMANDS_USER = "MyCommandsBot";
} }

9
src/main/java/org/telegram/Main.java

@ -4,13 +4,7 @@ import org.telegram.telegrambots.TelegramApiException;
import org.telegram.telegrambots.TelegramBotsApi; import org.telegram.telegrambots.TelegramBotsApi;
import org.telegram.telegrambots.logging.BotLogger; import org.telegram.telegrambots.logging.BotLogger;
import org.telegram.telegrambots.logging.BotsFileHandler; import org.telegram.telegrambots.logging.BotsFileHandler;
import org.telegram.updateshandlers.ChannelHandlers; import org.telegram.updateshandlers.*;
import org.telegram.updateshandlers.DirectionsHandlers;
import org.telegram.updateshandlers.FilesHandlers;
import org.telegram.updateshandlers.RaeHandlers;
import org.telegram.updateshandlers.TransifexHandlers;
import org.telegram.updateshandlers.WeatherHandlers;
import org.telegram.updateshandlers.WebHookExampleHandlers;
import java.io.IOException; import java.io.IOException;
import java.util.logging.ConsoleHandler; import java.util.logging.ConsoleHandler;
@ -44,6 +38,7 @@ public class Main {
telegramBotsApi.registerBot(new WeatherHandlers()); telegramBotsApi.registerBot(new WeatherHandlers());
telegramBotsApi.registerBot(new TransifexHandlers()); telegramBotsApi.registerBot(new TransifexHandlers());
telegramBotsApi.registerBot(new FilesHandlers()); telegramBotsApi.registerBot(new FilesHandlers());
telegramBotsApi.registerBot(new CommandsHandler());
} catch (TelegramApiException e) { } catch (TelegramApiException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
} }

55
src/main/java/org/telegram/commands/HelloCommand.java

@ -0,0 +1,55 @@
package org.telegram.commands;
import org.telegram.database.DatabaseManager;
import org.telegram.telegrambots.TelegramApiException;
import org.telegram.telegrambots.api.methods.send.SendMessage;
import org.telegram.telegrambots.api.objects.Chat;
import org.telegram.telegrambots.api.objects.User;
import org.telegram.telegrambots.bots.AbsSender;
import org.telegram.telegrambots.bots.commands.BotCommand;
import org.telegram.telegrambots.logging.BotLogger;
/**
* This command simply replies with a hello to the users command and
* sends them the 'kind' words back, which they send via command parameters
*
* @author Timo Schulz (Mit0x2)
*/
public class HelloCommand extends BotCommand {
private static final String LOGTAG = "HELLOCOMMAND";
public HelloCommand() {
super("hello", "Say hallo to this bot");
}
@Override
public void execute(AbsSender absSender, User user, Chat chat, String[] arguments) {
if (!DatabaseManager.getInstance().getUserStateForCommandsBot(user.getId())) {
return;
}
String userName = chat.getUserName();
if (userName == null || userName.isEmpty()) {
userName = user.getFirstName() + " " + user.getLastName();
}
StringBuilder messageTextBuilder = new StringBuilder("Hello ").append(userName);
if (arguments != null && arguments.length > 0) {
messageTextBuilder.append("\n");
messageTextBuilder.append("Thank you so much for your kind words:\n");
messageTextBuilder.append(String.join(" ", arguments));
}
SendMessage answer = new SendMessage();
answer.setChatId(chat.getId().toString());
answer.setText(messageTextBuilder.toString());
try {
absSender.sendMessage(answer);
} catch (TelegramApiException e) {
BotLogger.error(LOGTAG, e);
}
}
}

54
src/main/java/org/telegram/commands/HelpCommand.java

@ -0,0 +1,54 @@
package org.telegram.commands;
import org.telegram.database.DatabaseManager;
import org.telegram.telegrambots.TelegramApiException;
import org.telegram.telegrambots.api.methods.send.SendMessage;
import org.telegram.telegrambots.api.objects.Chat;
import org.telegram.telegrambots.api.objects.User;
import org.telegram.telegrambots.bots.AbsSender;
import org.telegram.telegrambots.bots.commands.BotCommand;
import org.telegram.telegrambots.bots.commands.ICommandRegistry;
import org.telegram.telegrambots.logging.BotLogger;
/**
* This command helps the user to find the command they need
*
* @author Timo Schulz (Mit0x2)
*/
public class HelpCommand extends BotCommand {
private static final String LOGTAG = "HELPCOMMAND";
private final ICommandRegistry commandRegistry;
public HelpCommand(ICommandRegistry commandRegistry) {
super("help", "Get all the commands this bot provides");
this.commandRegistry = commandRegistry;
}
@Override
public void execute(AbsSender absSender, User user, Chat chat, String[] strings) {
if (!DatabaseManager.getInstance().getUserStateForCommandsBot(user.getId())) {
return;
}
StringBuilder helpMessageBuilder = new StringBuilder("<b>Help</b>\n");
helpMessageBuilder.append("These are the registered commands for this Bot:\n\n");
for (BotCommand botCommand : commandRegistry.getRegisteredCommands()) {
helpMessageBuilder.append(botCommand.toString()).append("\n\n");
}
SendMessage helpMessage = new SendMessage();
helpMessage.setChatId(chat.getId().toString());
helpMessage.enableHtml(true);
helpMessage.setText(helpMessageBuilder.toString());
try {
absSender.sendMessage(helpMessage);
} catch (TelegramApiException e) {
BotLogger.error(LOGTAG, e);
}
}
}

51
src/main/java/org/telegram/commands/StartCommand.java

@ -0,0 +1,51 @@
package org.telegram.commands;
import org.telegram.database.DatabaseManager;
import org.telegram.telegrambots.TelegramApiException;
import org.telegram.telegrambots.api.methods.send.SendMessage;
import org.telegram.telegrambots.api.objects.Chat;
import org.telegram.telegrambots.api.objects.User;
import org.telegram.telegrambots.bots.AbsSender;
import org.telegram.telegrambots.bots.commands.BotCommand;
import org.telegram.telegrambots.logging.BotLogger;
/**
* This commands starts the conversation with the bot
*
* @author Timo Schulz (Mit0x2)
*/
public class StartCommand extends BotCommand {
public static final String LOGTAG = "STARTCOMMAND";
public StartCommand() {
super("start", "With this command you can start the Bot");
}
@Override
public void execute(AbsSender absSender, User user, Chat chat, String[] strings) {
DatabaseManager databseManager = DatabaseManager.getInstance();
StringBuilder messageBuilder = new StringBuilder();
String userName = user.getFirstName() + " " + user.getLastName();
if (databseManager.getUserStateForCommandsBot(user.getId())) {
messageBuilder.append("Hi ").append(userName).append("\n");
messageBuilder.append("i think we know each other already!");
} else {
databseManager.setUserStateForCommandsBot(user.getId(), true);
messageBuilder.append("Welcome ").append(userName).append("\n");
messageBuilder.append("this bot will demonstrate you the command feature of the Java TelegramBots API!");
}
SendMessage answer = new SendMessage();
answer.setChatId(chat.getId().toString());
answer.setText(messageBuilder.toString());
try {
absSender.sendMessage(answer);
} catch (TelegramApiException e) {
BotLogger.error(LOGTAG, e);
}
}
}

48
src/main/java/org/telegram/commands/StopCommand.java

@ -0,0 +1,48 @@
package org.telegram.commands;
import org.telegram.database.DatabaseManager;
import org.telegram.telegrambots.TelegramApiException;
import org.telegram.telegrambots.api.methods.send.SendMessage;
import org.telegram.telegrambots.api.objects.Chat;
import org.telegram.telegrambots.api.objects.User;
import org.telegram.telegrambots.bots.AbsSender;
import org.telegram.telegrambots.bots.commands.BotCommand;
import org.telegram.telegrambots.logging.BotLogger;
/**
* This commands stops the conversation with the bot.
* Bot won't respond to user until he sends a start command
*
* @author Timo Schulz (Mit0x2)
*/
public class StopCommand extends BotCommand {
public static final String LOGTAG = "STOPCOMMAND";
/**
* Construct
*/
public StopCommand() {
super("stop", "With this command you can stop the Bot");
}
@Override
public void execute(AbsSender absSender, User user, Chat chat, String[] arguments) {
DatabaseManager dbManager = DatabaseManager.getInstance();
if (dbManager.getUserStateForCommandsBot(user.getId())) {
dbManager.setUserStateForCommandsBot(user.getId(), false);
String userName = user.getFirstName() + " " + user.getLastName();
SendMessage answer = new SendMessage();
answer.setChatId(chat.getId().toString());
answer.setText("Good bye " + userName + "\n" + "Hope to see you soon!");
try {
absSender.sendMessage(answer);
} catch (TelegramApiException e) {
BotLogger.error(LOGTAG, e);
}
}
}
}

4
src/main/java/org/telegram/database/CreationStrings.java

@ -7,7 +7,7 @@ package org.telegram.database;
* @date 15 of May of 2015 * @date 15 of May of 2015
*/ */
public class CreationStrings { public class CreationStrings {
public static final int version = 7; public static final int version = 8;
public static final String createVersionTable = "CREATE TABLE IF NOT EXISTS Versions(ID INTEGER PRIMARY KEY AUTO_INCREMENT, Version INTEGER);"; public static final String createVersionTable = "CREATE TABLE IF NOT EXISTS Versions(ID INTEGER PRIMARY KEY AUTO_INCREMENT, Version INTEGER);";
public static final String insertCurrentVersion = "INSERT IGNORE INTO Versions (Version) VALUES(%d);"; public static final String insertCurrentVersion = "INSERT IGNORE INTO Versions (Version) VALUES(%d);";
public static final String createFilesTable = "CREATE TABLE IF NOT EXISTS Files (fileId VARCHAR(100) PRIMARY KEY, userId INTEGER NOT NULL, caption TEXT NOT NULL)"; public static final String createFilesTable = "CREATE TABLE IF NOT EXISTS Files (fileId VARCHAR(100) PRIMARY KEY, userId INTEGER NOT NULL, caption TEXT NOT NULL)";
@ -27,4 +27,6 @@ public class CreationStrings {
public static final String createWeatherAlertTable = "CREATE TABLE IF NOT EXISTS WeatherAlert (id INTEGER PRIMARY KEY AUTO_INCREMENT, userId INTEGER NOT NULL, cityId INTEGER NOT NULL, " + public static final String createWeatherAlertTable = "CREATE TABLE IF NOT EXISTS WeatherAlert (id INTEGER PRIMARY KEY AUTO_INCREMENT, userId INTEGER NOT NULL, cityId INTEGER NOT NULL, " +
"cityName VARCHAR(60) NOT NULL, time INTEGER NOT NULL DEFAULT -1, CONSTRAINT unique_cityNameAlert UNIQUE (userId, cityName)," + "cityName VARCHAR(60) NOT NULL, time INTEGER NOT NULL DEFAULT -1, CONSTRAINT unique_cityNameAlert UNIQUE (userId, cityName)," +
"CONSTRAINT unique_cityIdAlert UNIQUE (userId, cityId));"; "CONSTRAINT unique_cityIdAlert UNIQUE (userId, cityId));";
public static final String CREATE_COMMANDS_TABLE = "CREATE TABLE IF NOT EXISTS CommandUsers (userId INTEGER PRIMARY KEY, status INTEGER NOT NULL);";
} }

40
src/main/java/org/telegram/database/DatabaseManager.java

@ -89,6 +89,9 @@ public class DatabaseManager {
if (currentVersion == 6) { if (currentVersion == 6) {
currentVersion = updateToVersion7(); currentVersion = updateToVersion7();
} }
if (currentVersion == 7) {
currentVersion = updateToVersion8();
}
connetion.commitTransaction(); connetion.commitTransaction();
} catch (SQLException e) { } catch (SQLException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
@ -133,6 +136,12 @@ public class DatabaseManager {
return 7; return 7;
} }
private int updateToVersion8() throws SQLException {
connetion.executeQuery(CreationStrings.CREATE_COMMANDS_TABLE);
connetion.executeQuery(String.format(CreationStrings.insertCurrentVersion, 8));
return 8;
}
private int createNewTables() throws SQLException { private int createNewTables() throws SQLException {
connetion.executeQuery(CreationStrings.createVersionTable); connetion.executeQuery(CreationStrings.createVersionTable);
connetion.executeQuery(CreationStrings.createFilesTable); connetion.executeQuery(CreationStrings.createFilesTable);
@ -144,9 +153,40 @@ public class DatabaseManager {
connetion.executeQuery(CreationStrings.createWeatherStateTable); connetion.executeQuery(CreationStrings.createWeatherStateTable);
connetion.executeQuery(CreationStrings.createUserWeatherOptionDatabase); connetion.executeQuery(CreationStrings.createUserWeatherOptionDatabase);
connetion.executeQuery(CreationStrings.createWeatherAlertTable); connetion.executeQuery(CreationStrings.createWeatherAlertTable);
connetion.executeQuery(CreationStrings.CREATE_COMMANDS_TABLE);
return CreationStrings.version; return CreationStrings.version;
} }
public boolean setUserStateForCommandsBot(Integer userId, boolean active) {
int updatedRows = 0;
try {
final PreparedStatement preparedStatement = connetion.getPreparedStatement("INSERT INTO CommandUsers (userId, status) VALUES(?, ?) ON DUPLICATE KEY UPDATE status=?");
preparedStatement.setInt(1, userId);
preparedStatement.setInt(2, active ? 1 : 0);
preparedStatement.setInt(3, active ? 1 : 0);
updatedRows = preparedStatement.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
return updatedRows > 0;
}
public boolean getUserStateForCommandsBot(Integer userId) {
int status = -1;
try {
final PreparedStatement preparedStatement = connetion.getPreparedStatement("Select status FROM CommandUsers WHERE userId=?");
preparedStatement.setInt(1, userId);
final ResultSet result = preparedStatement.executeQuery();
if (result.next()) {
status = result.getInt("status");
}
} catch (SQLException e) {
e.printStackTrace();
}
return status == 1;
}
public boolean addFile(String fileId, Integer userId, String caption) { public boolean addFile(String fileId, Integer userId, String caption) {
int updatedRows = 0; int updatedRows = 0;
try { try {

26
src/main/java/org/telegram/services/TransifexService.java

@ -94,7 +94,7 @@ public class TransifexService {
HttpClient client = HttpClientBuilder.create().build(); HttpClient client = HttpClientBuilder.create().build();
HttpGet request = new HttpGet(BASEURLiOS.replace("@language", query)); HttpGet request = new HttpGet(BASEURLiOS.replace("@language", query));
HttpResponse response = client.execute(request); HttpResponse response = client.execute(request);
result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-16LE")); result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-16LE"), "UTF-16LE");
} catch (IOException e) { } catch (IOException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
} }
@ -107,7 +107,7 @@ public class TransifexService {
HttpClient client = HttpClientBuilder.create().build(); HttpClient client = HttpClientBuilder.create().build();
HttpGet request = new HttpGet(BASEURLOSX.replace("@language", query)); HttpGet request = new HttpGet(BASEURLOSX.replace("@language", query));
HttpResponse response = client.execute(request); HttpResponse response = client.execute(request);
result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-16LE")); result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-16LE"), "UTF-16LE");
} catch (IOException e) { } catch (IOException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
} }
@ -120,7 +120,7 @@ public class TransifexService {
HttpClient client = HttpClientBuilder.create().build(); HttpClient client = HttpClientBuilder.create().build();
HttpGet request = new HttpGet(BASEURLTDesktop.replace("@language", query)); HttpGet request = new HttpGet(BASEURLTDesktop.replace("@language", query));
HttpResponse response = client.execute(request); HttpResponse response = client.execute(request);
result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-16LE")); result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-16LE"), "UTF-16LE");
} catch (IOException e) { } catch (IOException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
} }
@ -133,7 +133,7 @@ public class TransifexService {
HttpClient client = HttpClientBuilder.create().build(); HttpClient client = HttpClientBuilder.create().build();
HttpGet request = new HttpGet(BASEURLTemplates.replace("@language", languageCode)); HttpGet request = new HttpGet(BASEURLTemplates.replace("@language", languageCode));
HttpResponse response = client.execute(request); HttpResponse response = client.execute(request);
result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-8")); result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-8"), "UTF-8");
} catch (IOException e) { } catch (IOException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
} }
@ -146,7 +146,7 @@ public class TransifexService {
HttpClient client = HttpClientBuilder.create().build(); HttpClient client = HttpClientBuilder.create().build();
HttpGet request = new HttpGet(BASEURLWebogram.replace("@language", query)); HttpGet request = new HttpGet(BASEURLWebogram.replace("@language", query));
HttpResponse response = client.execute(request); HttpResponse response = client.execute(request);
result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-16LE")); result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-16LE"), "UTF-16LE");
} catch (IOException e) { } catch (IOException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
} }
@ -159,7 +159,7 @@ public class TransifexService {
HttpClient client = HttpClientBuilder.create().build(); HttpClient client = HttpClientBuilder.create().build();
HttpGet request = new HttpGet(BASEURLWP.replace("@language", query)); HttpGet request = new HttpGet(BASEURLWP.replace("@language", query));
HttpResponse response = client.execute(request); HttpResponse response = client.execute(request);
result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-16LE")); result = IOUtils.toByteArray(new InputStreamReader(response.getEntity().getContent(), "UTF-16LE"), "UTF-16LE");
} catch (IOException e) { } catch (IOException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
} }
@ -199,7 +199,7 @@ public class TransifexService {
localFile.close(); localFile.close();
File fileToUpload = new File(fileName); File fileToUpload = new File(fileName);
sendDocument = new SendDocument(); sendDocument = new SendDocument();
sendDocument.setNewDocument(fileToUpload.getAbsolutePath(), fileName); sendDocument.setNewDocument(fileToUpload.getAbsoluteFile());
} catch (FileNotFoundException e) { } catch (FileNotFoundException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
} }
@ -226,7 +226,7 @@ public class TransifexService {
localFile.close(); localFile.close();
File fileToUpload = new File(fileName); File fileToUpload = new File(fileName);
sendDocument = new SendDocument(); sendDocument = new SendDocument();
sendDocument.setNewDocument(fileToUpload.getAbsolutePath(), fileName); sendDocument.setNewDocument(fileToUpload.getAbsoluteFile());
} catch (FileNotFoundException e) { } catch (FileNotFoundException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
} }
@ -254,7 +254,7 @@ public class TransifexService {
IOUtils.write(file, output); IOUtils.write(file, output);
output.close(); output.close();
sendDocument = new SendDocument(); sendDocument = new SendDocument();
sendDocument.setNewDocument(fileToUpload.getAbsolutePath(), fileName); sendDocument.setNewDocument(fileToUpload.getAbsoluteFile());
} catch (IOException e) { } catch (IOException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
} }
@ -281,7 +281,7 @@ public class TransifexService {
IOUtils.write(file, output); IOUtils.write(file, output);
output.close(); output.close();
sendDocument = new SendDocument(); sendDocument = new SendDocument();
sendDocument.setNewDocument(fileToUpload.getAbsolutePath(), fileName); sendDocument.setNewDocument(fileToUpload.getAbsoluteFile());
} catch (IOException e) { } catch (IOException e) {
BotLogger.error(LOGTAG, e); BotLogger.error(LOGTAG, e);
} }
@ -309,7 +309,7 @@ public class TransifexService {
output.close(); output.close();
if (fileToUpload.exists()) { if (fileToUpload.exists()) {
sendDocument = new SendDocument(); sendDocument = new SendDocument();
sendDocument.setNewDocument(fileToUpload.getAbsolutePath(), fileName); sendDocument.setNewDocument(fileToUpload.getAbsoluteFile());
} }
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
@ -338,7 +338,7 @@ public class TransifexService {
output.close(); output.close();
if (fileToUpload.exists()) { if (fileToUpload.exists()) {
sendDocument = new SendDocument(); sendDocument = new SendDocument();
sendDocument.setNewDocument(fileToUpload.getAbsolutePath(), fileName); sendDocument.setNewDocument(fileToUpload.getAbsoluteFile());
} }
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
@ -367,7 +367,7 @@ public class TransifexService {
output.close(); output.close();
if (fileToUpload.exists()) { if (fileToUpload.exists()) {
sendDocument = new SendDocument(); sendDocument = new SendDocument();
sendDocument.setNewDocument(fileToUpload.getAbsolutePath(), fileName); sendDocument.setNewDocument(fileToUpload.getAbsoluteFile());
} }
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();

17
src/main/java/org/telegram/updateshandlers/ChannelHandlers.java

@ -52,13 +52,13 @@ public class ChannelHandlers extends TelegramLongPollingBot {
@Override @Override
public String getBotToken() { public String getBotToken() {
return BotConfig.TOKENCHANNEL; return BotConfig.CHANNEL_TOKEN;
} }
@Override @Override
public String getBotUsername() { public String getBotUsername() {
return BotConfig.USERNAMECHANNEL; return BotConfig.CHANNEL_USER;
} }
@ -115,7 +115,7 @@ public class ChannelHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setText(String.format(ERROR_MESSAGE_TEXT, message.getText().trim(), errorText.replace("\"", "\\\""))); sendMessage.setText(String.format(ERROR_MESSAGE_TEXT, message.getText().trim(), errorText.replace("\"", "\\\"")));
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
@ -131,12 +131,11 @@ public class ChannelHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
ForceReplyKeyboard forceReplyKeyboard = new ForceReplyKeyboard(); ForceReplyKeyboard forceReplyKeyboard = new ForceReplyKeyboard();
forceReplyKeyboard.setSelective(true); forceReplyKeyboard.setSelective(true);
forceReplyKeyboard.setForceReply(true); sendMessage.setReplyMarkup(forceReplyKeyboard);
sendMessage.setReplayMarkup(forceReplyKeyboard);
sendMessage.setText(WRONG_CHANNEL_TEXT); sendMessage.setText(WRONG_CHANNEL_TEXT);
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
@ -147,7 +146,7 @@ public class ChannelHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setText(AFTER_CHANNEL_TEXT); sendMessage.setText(AFTER_CHANNEL_TEXT);
return sendMessage; return sendMessage;
@ -157,9 +156,9 @@ public class ChannelHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(chatId); sendMessage.setChatId(chatId);
sendMessage.setReplayToMessageId(messageId); sendMessage.setReplyToMessageId(messageId);
if (replyKeyboardMarkup != null) { if (replyKeyboardMarkup != null) {
sendMessage.setReplayMarkup(replyKeyboardMarkup); sendMessage.setReplyMarkup(replyKeyboardMarkup);
} }
sendMessage.setText(HELP_TEXT); sendMessage.setText(HELP_TEXT);

82
src/main/java/org/telegram/updateshandlers/CommandsHandler.java

@ -0,0 +1,82 @@
package org.telegram.updateshandlers;
import org.telegram.BotConfig;
import org.telegram.commands.HelloCommand;
import org.telegram.commands.HelpCommand;
import org.telegram.commands.StartCommand;
import org.telegram.commands.StopCommand;
import org.telegram.database.DatabaseManager;
import org.telegram.services.Emoji;
import org.telegram.telegrambots.TelegramApiException;
import org.telegram.telegrambots.api.methods.send.SendMessage;
import org.telegram.telegrambots.api.objects.Message;
import org.telegram.telegrambots.api.objects.Update;
import org.telegram.telegrambots.bots.TelegramLongPollingCommandBot;
import org.telegram.telegrambots.logging.BotLogger;
/**
* This handler mainly works with commands to demonstrate the Commands feature of the API
*
* @author Timo Schulz (Mit0x2)
*/
public class CommandsHandler extends TelegramLongPollingCommandBot {
public static final String LOGTAG = "COMMANDSHANDLER";
/**
* Constructor.
*/
public CommandsHandler() {
register(new HelloCommand());
register(new StartCommand());
register(new StopCommand());
HelpCommand helpCommand = new HelpCommand(this);
register(helpCommand);
registerDefaultAction((absSender, message) -> {
SendMessage commandUnknownMessage = new SendMessage();
commandUnknownMessage.setChatId(message.getChatId().toString());
commandUnknownMessage.setText("The command '" + message.getText() + "' is not known by this bot. Here comes some help " + Emoji.AMBULANCE);
try {
absSender.sendMessage(commandUnknownMessage);
} catch (TelegramApiException e) {
BotLogger.error(LOGTAG, e);
}
helpCommand.execute(absSender, message.getFrom(), message.getChat(), new String[] {});
});
}
@Override
public void processNonCommandUpdate(Update update) {
if (update.hasMessage()) {
Message message = update.getMessage();
if (!DatabaseManager.getInstance().getUserStateForCommandsBot(message.getFrom().getId())) {
return;
}
if (message.hasText()) {
SendMessage echoMessage = new SendMessage();
echoMessage.setChatId(message.getChatId().toString());
echoMessage.setText("Hey heres your message:\n" + message.getText());
try {
sendMessage(echoMessage);
} catch (TelegramApiException e) {
BotLogger.error(LOGTAG, e);
}
}
}
}
@Override
public String getBotUsername() {
return BotConfig.COMMANDS_USER;
}
@Override
public String getBotToken() {
return BotConfig.COMMANDS_TOKEN;
}
}

23
src/main/java/org/telegram/updateshandlers/DirectionsHandlers.java

@ -42,7 +42,7 @@ public class DirectionsHandlers extends TelegramLongPollingBot {
@Override @Override
public String getBotToken() { public String getBotToken() {
return BotConfig.TOKENDIRECTIONS; return BotConfig.DIRECTIONS_TOKEN;
} }
@Override @Override
@ -56,7 +56,7 @@ public class DirectionsHandlers extends TelegramLongPollingBot {
@Override @Override
public String getBotUsername() { public String getBotUsername() {
return BotConfig.USERNAMEDIRECTIONS; return BotConfig.DIRECTIONS_USER;
} }
private void handleDirections(Update update) throws InvalidObjectException { private void handleDirections(Update update) throws InvalidObjectException {
@ -111,8 +111,8 @@ public class DirectionsHandlers extends TelegramLongPollingBot {
sendMessageRequest.setChatId(message.getChatId().toString()); sendMessageRequest.setChatId(message.getChatId().toString());
ReplyKeyboardHide replyKeyboardHide = new ReplyKeyboardHide(); ReplyKeyboardHide replyKeyboardHide = new ReplyKeyboardHide();
replyKeyboardHide.setSelective(true); replyKeyboardHide.setSelective(true);
sendMessageRequest.setReplayMarkup(replyKeyboardHide); sendMessageRequest.setReplyMarkup(replyKeyboardHide);
sendMessageRequest.setReplayToMessageId(message.getMessageId()); sendMessageRequest.setReplyToMessageId(message.getMessageId());
for (String direction : directions) { for (String direction : directions) {
sendMessageRequest.setText(direction); sendMessageRequest.setText(direction);
try { try {
@ -143,10 +143,10 @@ public class DirectionsHandlers extends TelegramLongPollingBot {
private void onOriginReceived(Message message, String language) { private void onOriginReceived(Message message, String language) {
SendMessage sendMessageRequest = new SendMessage(); SendMessage sendMessageRequest = new SendMessage();
sendMessageRequest.setChatId(message.getChatId().toString()); sendMessageRequest.setChatId(message.getChatId().toString());
sendMessageRequest.setReplayToMessageId(message.getMessageId()); sendMessageRequest.setReplyToMessageId(message.getMessageId());
ForceReplyKeyboard forceReplyKeyboard = new ForceReplyKeyboard(); ForceReplyKeyboard forceReplyKeyboard = new ForceReplyKeyboard();
forceReplyKeyboard.setSelective(true); forceReplyKeyboard.setSelective(true);
sendMessageRequest.setReplayMarkup(forceReplyKeyboard); sendMessageRequest.setReplyMarkup(forceReplyKeyboard);
sendMessageRequest.setText(LocalisationService.getInstance().getString("sendDestination", language)); sendMessageRequest.setText(LocalisationService.getInstance().getString("sendDestination", language));
try { try {
@ -191,10 +191,10 @@ public class DirectionsHandlers extends TelegramLongPollingBot {
private void onStartdirectionsCommand(Message message, String language) { private void onStartdirectionsCommand(Message message, String language) {
SendMessage sendMessageRequest = new SendMessage(); SendMessage sendMessageRequest = new SendMessage();
sendMessageRequest.setChatId(message.getChatId().toString()); sendMessageRequest.setChatId(message.getChatId().toString());
sendMessageRequest.setReplayToMessageId(message.getMessageId()); sendMessageRequest.setReplyToMessageId(message.getMessageId());
ForceReplyKeyboard forceReplyKeyboard = new ForceReplyKeyboard(); ForceReplyKeyboard forceReplyKeyboard = new ForceReplyKeyboard();
forceReplyKeyboard.setSelective(true); forceReplyKeyboard.setSelective(true);
sendMessageRequest.setReplayMarkup(forceReplyKeyboard); sendMessageRequest.setReplyMarkup(forceReplyKeyboard);
sendMessageRequest.setText(LocalisationService.getInstance().getString("initDirections", language)); sendMessageRequest.setText(LocalisationService.getInstance().getString("initDirections", language));
try { try {
@ -237,7 +237,7 @@ public class DirectionsHandlers extends TelegramLongPollingBot {
replyKeyboardMarkup.setOneTimeKeyboad(true); replyKeyboardMarkup.setOneTimeKeyboad(true);
replyKeyboardMarkup.setKeyboard(commands); replyKeyboardMarkup.setKeyboard(commands);
replyKeyboardMarkup.setSelective(true); replyKeyboardMarkup.setSelective(true);
sendMessageRequest.setReplayMarkup(replyKeyboardMarkup); sendMessageRequest.setReplyMarkup(replyKeyboardMarkup);
sendMessageRequest.setText(LocalisationService.getInstance().getString("chooselanguage", language)); sendMessageRequest.setText(LocalisationService.getInstance().getString("chooselanguage", language));
try { try {
sendMessage(sendMessageRequest); sendMessage(sendMessageRequest);
@ -257,11 +257,10 @@ public class DirectionsHandlers extends TelegramLongPollingBot {
} else { } else {
sendMessageRequest.setText(LocalisationService.getInstance().getString("errorLanguage")); sendMessageRequest.setText(LocalisationService.getInstance().getString("errorLanguage"));
} }
sendMessageRequest.setReplayToMessageId(message.getMessageId()); sendMessageRequest.setReplyToMessageId(message.getMessageId());
ReplyKeyboardHide replyKeyboardHide = new ReplyKeyboardHide(); ReplyKeyboardHide replyKeyboardHide = new ReplyKeyboardHide();
replyKeyboardHide.setHideKeyboard(true);
replyKeyboardHide.setSelective(true); replyKeyboardHide.setSelective(true);
sendMessageRequest.setReplayMarkup(replyKeyboardHide); sendMessageRequest.setReplyMarkup(replyKeyboardHide);
try { try {
sendMessage(sendMessageRequest); sendMessage(sendMessageRequest);
languageMessages.remove(message.getFrom().getId()); languageMessages.remove(message.getFrom().getId());

16
src/main/java/org/telegram/updateshandlers/FilesHandlers.java

@ -39,7 +39,7 @@ public class FilesHandlers extends TelegramLongPollingBot {
@Override @Override
public String getBotToken() { public String getBotToken() {
return BotConfig.TOKENFILES; return BotConfig.FILES_TOKEN;
} }
@Override @Override
@ -63,7 +63,7 @@ public class FilesHandlers extends TelegramLongPollingBot {
@Override @Override
public String getBotUsername() { public String getBotUsername() {
return BotConfig.USERNAMEFILES; return BotConfig.FILES_USER;
} }
private void handleFileUpdate(Update update) throws InvalidObjectException, TelegramApiException { private void handleFileUpdate(Update update) throws InvalidObjectException, TelegramApiException {
@ -125,8 +125,7 @@ public class FilesHandlers extends TelegramLongPollingBot {
} }
sendMessageRequest.setChatId(message.getChatId().toString()); sendMessageRequest.setChatId(message.getChatId().toString());
ReplyKeyboardHide replyKeyboardHide = new ReplyKeyboardHide(); ReplyKeyboardHide replyKeyboardHide = new ReplyKeyboardHide();
replyKeyboardHide.setHideKeyboard(true); sendMessageRequest.setReplyMarkup(replyKeyboardHide);
sendMessageRequest.setReplayMarkup(replyKeyboardHide);
sendMessage(sendMessageRequest); sendMessage(sendMessageRequest);
} }
@ -158,7 +157,7 @@ public class FilesHandlers extends TelegramLongPollingBot {
replyKeyboardMarkup.setOneTimeKeyboad(true); replyKeyboardMarkup.setOneTimeKeyboad(true);
replyKeyboardMarkup.setKeyboard(commands); replyKeyboardMarkup.setKeyboard(commands);
} }
sendMessageRequest.setReplayMarkup(replyKeyboardMarkup); sendMessageRequest.setReplyMarkup(replyKeyboardMarkup);
sendMessage(sendMessageRequest); sendMessage(sendMessageRequest);
} }
@ -234,7 +233,7 @@ public class FilesHandlers extends TelegramLongPollingBot {
replyKeyboardMarkup.setOneTimeKeyboad(true); replyKeyboardMarkup.setOneTimeKeyboad(true);
replyKeyboardMarkup.setKeyboard(commands); replyKeyboardMarkup.setKeyboard(commands);
replyKeyboardMarkup.setSelective(true); replyKeyboardMarkup.setSelective(true);
sendMessageRequest.setReplayMarkup(replyKeyboardMarkup); sendMessageRequest.setReplyMarkup(replyKeyboardMarkup);
sendMessageRequest.setText(LocalisationService.getInstance().getString("chooselanguage", language)); sendMessageRequest.setText(LocalisationService.getInstance().getString("chooselanguage", language));
sendMessage(sendMessageRequest); sendMessage(sendMessageRequest);
languageMessages.add(message.getFrom().getId()); languageMessages.add(message.getFrom().getId());
@ -250,11 +249,10 @@ public class FilesHandlers extends TelegramLongPollingBot {
} else { } else {
sendMessageRequest.setText(LocalisationService.getInstance().getString("errorLanguage")); sendMessageRequest.setText(LocalisationService.getInstance().getString("errorLanguage"));
} }
sendMessageRequest.setReplayToMessageId(message.getMessageId()); sendMessageRequest.setReplyToMessageId(message.getMessageId());
ReplyKeyboardHide replyKeyboardHide = new ReplyKeyboardHide(); ReplyKeyboardHide replyKeyboardHide = new ReplyKeyboardHide();
replyKeyboardHide.setHideKeyboard(true);
replyKeyboardHide.setSelective(true); replyKeyboardHide.setSelective(true);
sendMessageRequest.setReplayMarkup(replyKeyboardHide); sendMessageRequest.setReplyMarkup(replyKeyboardHide);
sendMessage(sendMessageRequest); sendMessage(sendMessageRequest);
languageMessages.remove(message.getFrom().getId()); languageMessages.remove(message.getFrom().getId());
} }

4
src/main/java/org/telegram/updateshandlers/RaeHandlers.java

@ -38,7 +38,7 @@ public class RaeHandlers extends TelegramLongPollingBot {
@Override @Override
public String getBotToken() { public String getBotToken() {
return BotConfig.TOKENRAE; return BotConfig.RAE_TOKEN;
} }
@Override @Override
@ -60,7 +60,7 @@ public class RaeHandlers extends TelegramLongPollingBot {
@Override @Override
public String getBotUsername() { public String getBotUsername() {
return BotConfig.USERNAMERAE; return BotConfig.RAE_USER;
} }
/** /**

4
src/main/java/org/telegram/updateshandlers/TransifexHandlers.java

@ -26,7 +26,7 @@ public class TransifexHandlers extends TelegramLongPollingBot {
@Override @Override
public String getBotToken() { public String getBotToken() {
return BotConfig.TOKENTRANSIFEX; return BotConfig.TRANSIFEX_TOKEN;
} }
@Override @Override
@ -40,7 +40,7 @@ public class TransifexHandlers extends TelegramLongPollingBot {
@Override @Override
public String getBotUsername() { public String getBotUsername() {
return BotConfig.USERNAMETRANSIFEX; return BotConfig.TRANSIFEX_USER;
} }
private void sendTransifexFile(Update update) throws InvalidObjectException { private void sendTransifexFile(Update update) throws InvalidObjectException {

151
src/main/java/org/telegram/updateshandlers/WeatherHandlers.java

@ -55,7 +55,7 @@ public class WeatherHandlers extends TelegramLongPollingBot {
@Override @Override
public String getBotToken() { public String getBotToken() {
return BotConfig.TOKENWEATHER; return BotConfig.WEATHER_TOKEN;
} }
@Override @Override
@ -74,7 +74,7 @@ public class WeatherHandlers extends TelegramLongPollingBot {
@Override @Override
public String getBotUsername() { public String getBotUsername() {
return BotConfig.USERNAMEWEATHER; return BotConfig.WEATHER_USER;
} }
private void startAlertTimers() { private void startAlertTimers() {
@ -127,9 +127,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.setChatId(chatId.toString()); sendMessage.setChatId(chatId.toString());
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setReplayMarkup(getMainMenuKeyboard(language)); sendMessage.setReplyToMessageId(messageId);
sendMessage.setReplayToMessageId(messageId); sendMessage.setReplyMarkup(replyKeyboard);
sendMessage.setReplayMarkup(replyKeyboard);
sendMessage.setText(LocalisationService.getInstance().getString("backToMainMenu", language)); sendMessage.setText(LocalisationService.getInstance().getString("backToMainMenu", language));
DatabaseManager.getInstance().insertWeatherState(userId, chatId, MAINMENU); DatabaseManager.getInstance().insertWeatherState(userId, chatId, MAINMENU);
@ -190,13 +189,12 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.setChatId(chatId.toString()); sendMessage.setChatId(chatId.toString());
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setReplayToMessageId(messageId); sendMessage.setReplyToMessageId(messageId);
sendMessage.setText(Emoji.WAVING_HAND_SIGN.toString()); sendMessage.setText(Emoji.WAVING_HAND_SIGN.toString());
ReplyKeyboardHide replyKeyboardHide = new ReplyKeyboardHide(); ReplyKeyboardHide replyKeyboardHide = new ReplyKeyboardHide();
replyKeyboardHide.setSelective(true); replyKeyboardHide.setSelective(true);
replyKeyboardHide.setHideKeyboard(true); sendMessage.setReplyMarkup(replyKeyboardHide);
sendMessage.setReplayMarkup(replyKeyboardHide);
sendMessage(sendMessage); sendMessage(sendMessage);
DatabaseManager.getInstance().insertWeatherState(userId, chatId, STARTSTATE); DatabaseManager.getInstance().insertWeatherState(userId, chatId, STARTSTATE);
@ -247,9 +245,9 @@ public class WeatherHandlers extends TelegramLongPollingBot {
DatabaseManager.getInstance().deleteAlertCity(message.getFrom().getId(), message.getText()); DatabaseManager.getInstance().deleteAlertCity(message.getFrom().getId(), message.getText());
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setReplayMarkup(getAlertsKeyboard(language)); sendMessage.setReplyMarkup(getAlertsKeyboard(language));
sendMessage.setText(LocalisationService.getInstance().getString("alertDeleted", language)); sendMessage.setText(LocalisationService.getInstance().getString("alertDeleted", language));
DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERT); DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERT);
@ -259,9 +257,9 @@ public class WeatherHandlers extends TelegramLongPollingBot {
private static SendMessage onAlertDeleteBackOptionSelected(Message message, String language) { private static SendMessage onAlertDeleteBackOptionSelected(Message message, String language) {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setReplayMarkup(getAlertsKeyboard(language)); sendMessage.setReplyMarkup(getAlertsKeyboard(language));
sendMessage.setText(LocalisationService.getInstance().getString("alertsMenuMessage", language)); sendMessage.setText(LocalisationService.getInstance().getString("alertsMenuMessage", language));
DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERT); DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERT);
@ -275,8 +273,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setReplayMarkup(getAlertsKeyboard(language)); sendMessage.setReplyMarkup(getAlertsKeyboard(language));
sendMessage.setText(LocalisationService.getInstance().getString("alertsMenuMessage", language)); sendMessage.setText(LocalisationService.getInstance().getString("alertsMenuMessage", language));
DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERT); DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERT);
sendMessageRequest = sendMessage; sendMessageRequest = sendMessage;
@ -294,8 +292,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
DatabaseManager.getInstance().createNewWeatherAlert(userId, cityId, message.getText()); DatabaseManager.getInstance().createNewWeatherAlert(userId, cityId, message.getText());
SendMessage sendMessageRequest = new SendMessage(); SendMessage sendMessageRequest = new SendMessage();
sendMessageRequest.enableMarkdown(true); sendMessageRequest.enableMarkdown(true);
sendMessageRequest.setReplayMarkup(getAlertsKeyboard(language)); sendMessageRequest.setReplyMarkup(getAlertsKeyboard(language));
sendMessageRequest.setReplayToMessageId(message.getMessageId()); sendMessageRequest.setReplyToMessageId(message.getMessageId());
sendMessageRequest.setText(getChooseNewAlertSetMessage(message.getText(), language)); sendMessageRequest.setText(getChooseNewAlertSetMessage(message.getText(), language));
sendMessageRequest.setChatId(message.getChatId().toString()); sendMessageRequest.setChatId(message.getChatId().toString());
@ -331,8 +329,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
ReplyKeyboardMarkup replyKeyboardMarkup = getSettingsKeyboard(language); ReplyKeyboardMarkup replyKeyboardMarkup = getSettingsKeyboard(language);
sendMessage.setReplayMarkup(replyKeyboardMarkup); sendMessage.setReplyMarkup(replyKeyboardMarkup);
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setText(getSettingsMessage(language)); sendMessage.setText(getSettingsMessage(language));
@ -345,10 +343,10 @@ public class WeatherHandlers extends TelegramLongPollingBot {
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setReplayMarkup(getAlertsKeyboard(language)); sendMessage.setReplyMarkup(getAlertsKeyboard(language));
sendMessage.setText(getAlertListMessage(message.getFrom().getId(), language)); sendMessage.setText(getAlertListMessage(message.getFrom().getId(), language));
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
return sendMessage; return sendMessage;
} }
@ -361,15 +359,15 @@ public class WeatherHandlers extends TelegramLongPollingBot {
ReplyKeyboardMarkup replyKeyboardMarkup = getAlertsListKeyboard(message.getFrom().getId(), language); ReplyKeyboardMarkup replyKeyboardMarkup = getAlertsListKeyboard(message.getFrom().getId(), language);
if (replyKeyboardMarkup != null) { if (replyKeyboardMarkup != null) {
sendMessage.setReplayMarkup(replyKeyboardMarkup); sendMessage.setReplyMarkup(replyKeyboardMarkup);
sendMessage.setText(LocalisationService.getInstance().getString("chooseNewAlertCity", language)); sendMessage.setText(LocalisationService.getInstance().getString("chooseNewAlertCity", language));
DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERTDELETE); DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERTDELETE);
} else { } else {
sendMessage.setReplayMarkup(getAlertsKeyboard(language)); sendMessage.setReplyMarkup(getAlertsKeyboard(language));
sendMessage.setText(LocalisationService.getInstance().getString("noAlertList", language)); sendMessage.setText(LocalisationService.getInstance().getString("noAlertList", language));
} }
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
return sendMessage; return sendMessage;
} }
@ -378,9 +376,9 @@ public class WeatherHandlers extends TelegramLongPollingBot {
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setReplayMarkup(getRecentsKeyboard(message.getFrom().getId(), language, false)); sendMessage.setReplyMarkup(getRecentsKeyboard(message.getFrom().getId(), language, false));
sendMessage.setText(LocalisationService.getInstance().getString("chooseNewAlertCity", language)); sendMessage.setText(LocalisationService.getInstance().getString("chooseNewAlertCity", language));
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERTNEW); DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERTNEW);
return sendMessage; return sendMessage;
@ -413,9 +411,9 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setReplayMarkup(getAlertsKeyboard(language)); sendMessage.setReplyMarkup(getAlertsKeyboard(language));
sendMessage.setText(LocalisationService.getInstance().getString("alertsMenuMessage", language)); sendMessage.setText(LocalisationService.getInstance().getString("alertsMenuMessage", language));
DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERT); DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), ALERT);
@ -426,9 +424,9 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setReplayMarkup(getUnitsKeyboard(language)); sendMessage.setReplyMarkup(getUnitsKeyboard(language));
sendMessage.setText(getUnitsMessage(message.getFrom().getId(), language)); sendMessage.setText(getUnitsMessage(message.getFrom().getId(), language));
DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), UNITS); DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), UNITS);
@ -439,9 +437,9 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setReplayMarkup(getLanguagesKeyboard(language)); sendMessage.setReplyMarkup(getLanguagesKeyboard(language));
sendMessage.setText(getLanguageMessage(language)); sendMessage.setText(getLanguageMessage(language));
DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), LANGUAGE); DatabaseManager.getInstance().insertWeatherState(message.getFrom().getId(), message.getChatId(), LANGUAGE);
@ -475,8 +473,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
ReplyKeyboardMarkup replyKeyboardMarkup = getSettingsKeyboard(language); ReplyKeyboardMarkup replyKeyboardMarkup = getSettingsKeyboard(language);
sendMessage.setReplayMarkup(replyKeyboardMarkup); sendMessage.setReplyMarkup(replyKeyboardMarkup);
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setText(getSettingsMessage(language)); sendMessage.setText(getSettingsMessage(language));
@ -488,9 +486,9 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessageRequest = new SendMessage(); SendMessage sendMessageRequest = new SendMessage();
sendMessageRequest.enableMarkdown(true); sendMessageRequest.enableMarkdown(true);
sendMessageRequest.setChatId(chatId.toString()); sendMessageRequest.setChatId(chatId.toString());
sendMessageRequest.setReplayMarkup(getUnitsKeyboard(language)); sendMessageRequest.setReplyMarkup(getUnitsKeyboard(language));
sendMessageRequest.setText(LocalisationService.getInstance().getString("errorUnitsNotFound", language)); sendMessageRequest.setText(LocalisationService.getInstance().getString("errorUnitsNotFound", language));
sendMessageRequest.setReplayToMessageId(messageId); sendMessageRequest.setReplyToMessageId(messageId);
return sendMessageRequest; return sendMessageRequest;
} }
@ -502,8 +500,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
sendMessageRequest.enableMarkdown(true); sendMessageRequest.enableMarkdown(true);
sendMessageRequest.setChatId(chatId.toString()); sendMessageRequest.setChatId(chatId.toString());
sendMessageRequest.setText(LocalisationService.getInstance().getString("unitsUpdated", language)); sendMessageRequest.setText(LocalisationService.getInstance().getString("unitsUpdated", language));
sendMessageRequest.setReplayToMessageId(messageId); sendMessageRequest.setReplyToMessageId(messageId);
sendMessageRequest.setReplayMarkup(getMainMenuKeyboard(language)); sendMessageRequest.setReplyMarkup(getMainMenuKeyboard(language));
DatabaseManager.getInstance().insertWeatherState(userId, chatId, MAINMENU); DatabaseManager.getInstance().insertWeatherState(userId, chatId, MAINMENU);
return sendMessageRequest; return sendMessageRequest;
@ -533,8 +531,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
ReplyKeyboardMarkup replyKeyboardMarkup = getSettingsKeyboard(language); ReplyKeyboardMarkup replyKeyboardMarkup = getSettingsKeyboard(language);
sendMessage.setReplayMarkup(replyKeyboardMarkup); sendMessage.setReplyMarkup(replyKeyboardMarkup);
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setText(getSettingsMessage(language)); sendMessage.setText(getSettingsMessage(language));
@ -546,9 +544,9 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessageRequest = new SendMessage(); SendMessage sendMessageRequest = new SendMessage();
sendMessageRequest.enableMarkdown(true); sendMessageRequest.enableMarkdown(true);
sendMessageRequest.setChatId(chatId.toString()); sendMessageRequest.setChatId(chatId.toString());
sendMessageRequest.setReplayMarkup(getLanguagesKeyboard(language)); sendMessageRequest.setReplyMarkup(getLanguagesKeyboard(language));
sendMessageRequest.setText(LocalisationService.getInstance().getString("errorLanguageNotFound", language)); sendMessageRequest.setText(LocalisationService.getInstance().getString("errorLanguageNotFound", language));
sendMessageRequest.setReplayToMessageId(messageId); sendMessageRequest.setReplyToMessageId(messageId);
return sendMessageRequest; return sendMessageRequest;
} }
@ -561,8 +559,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
sendMessageRequest.enableMarkdown(true); sendMessageRequest.enableMarkdown(true);
sendMessageRequest.setChatId(chatId.toString()); sendMessageRequest.setChatId(chatId.toString());
sendMessageRequest.setText(LocalisationService.getInstance().getString("languageUpdated", languageCode)); sendMessageRequest.setText(LocalisationService.getInstance().getString("languageUpdated", languageCode));
sendMessageRequest.setReplayToMessageId(messageId); sendMessageRequest.setReplyToMessageId(messageId);
sendMessageRequest.setReplayMarkup(getMainMenuKeyboard(languageCode)); sendMessageRequest.setReplyMarkup(getMainMenuKeyboard(languageCode));
DatabaseManager.getInstance().insertWeatherState(userId, chatId, MAINMENU); DatabaseManager.getInstance().insertWeatherState(userId, chatId, MAINMENU);
return sendMessageRequest; return sendMessageRequest;
@ -621,8 +619,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
String weather = WeatherService.getInstance().fetchWeatherForecast(cityId.toString(), userId, language, unitsSystem); String weather = WeatherService.getInstance().fetchWeatherForecast(cityId.toString(), userId, language, unitsSystem);
SendMessage sendMessageRequest = new SendMessage(); SendMessage sendMessageRequest = new SendMessage();
sendMessageRequest.enableMarkdown(true); sendMessageRequest.enableMarkdown(true);
sendMessageRequest.setReplayMarkup(getMainMenuKeyboard(language)); sendMessageRequest.setReplyMarkup(getMainMenuKeyboard(language));
sendMessageRequest.setReplayToMessageId(messageId); sendMessageRequest.setReplyToMessageId(messageId);
sendMessageRequest.setText(weather); sendMessageRequest.setText(weather);
sendMessageRequest.setChatId(chatId.toString()); sendMessageRequest.setChatId(chatId.toString());
@ -639,8 +637,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(chatId.toString()); sendMessage.setChatId(chatId.toString());
sendMessage.setReplayToMessageId(messageId); sendMessage.setReplyToMessageId(messageId);
sendMessage.setReplayMarkup(forceReplyKeyboard); sendMessage.setReplyMarkup(forceReplyKeyboard);
sendMessage.setText(LocalisationService.getInstance().getString("onWeatherLocationCommand", language)); sendMessage.setText(LocalisationService.getInstance().getString("onWeatherLocationCommand", language));
DatabaseManager.getInstance().insertWeatherState(userId, chatId, FORECASTLOCATIONWEATHER); DatabaseManager.getInstance().insertWeatherState(userId, chatId, FORECASTLOCATIONWEATHER);
@ -653,8 +651,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(chatId.toString()); sendMessage.setChatId(chatId.toString());
sendMessage.setReplayToMessageId(messageId); sendMessage.setReplyToMessageId(messageId);
sendMessage.setReplayMarkup(forceReplyKeyboard); sendMessage.setReplyMarkup(forceReplyKeyboard);
sendMessage.setText(LocalisationService.getInstance().getString("onWeatherNewCommand", language)); sendMessage.setText(LocalisationService.getInstance().getString("onWeatherNewCommand", language));
DatabaseManager.getInstance().insertWeatherState(userId, chatId, FORECASTNEWWEATHER); DatabaseManager.getInstance().insertWeatherState(userId, chatId, FORECASTNEWWEATHER);
@ -723,8 +721,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
String weather = WeatherService.getInstance().fetchWeatherCurrent(cityId.toString(), userId, language, unitsSystem); String weather = WeatherService.getInstance().fetchWeatherCurrent(cityId.toString(), userId, language, unitsSystem);
SendMessage sendMessageRequest = new SendMessage(); SendMessage sendMessageRequest = new SendMessage();
sendMessageRequest.enableMarkdown(true); sendMessageRequest.enableMarkdown(true);
sendMessageRequest.setReplayMarkup(getMainMenuKeyboard(language)); sendMessageRequest.setReplyMarkup(getMainMenuKeyboard(language));
sendMessageRequest.setReplayToMessageId(messageId); sendMessageRequest.setReplyToMessageId(messageId);
sendMessageRequest.setText(weather); sendMessageRequest.setText(weather);
sendMessageRequest.setChatId(chatId.toString()); sendMessageRequest.setChatId(chatId.toString());
DatabaseManager.getInstance().insertWeatherState(userId, chatId, MAINMENU); DatabaseManager.getInstance().insertWeatherState(userId, chatId, MAINMENU);
@ -740,8 +738,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(chatId.toString()); sendMessage.setChatId(chatId.toString());
sendMessage.setReplayToMessageId(messageId); sendMessage.setReplyToMessageId(messageId);
sendMessage.setReplayMarkup(forceReplyKeyboard); sendMessage.setReplyMarkup(forceReplyKeyboard);
sendMessage.setText(LocalisationService.getInstance().getString("onWeatherLocationCommand", language)); sendMessage.setText(LocalisationService.getInstance().getString("onWeatherLocationCommand", language));
DatabaseManager.getInstance().insertWeatherState(userId, chatId, CURRENTLOCATIONWEATHER); DatabaseManager.getInstance().insertWeatherState(userId, chatId, CURRENTLOCATIONWEATHER);
@ -754,8 +752,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(chatId.toString()); sendMessage.setChatId(chatId.toString());
sendMessage.setReplayToMessageId(messageId); sendMessage.setReplyToMessageId(messageId);
sendMessage.setReplayMarkup(forceReplyKeyboard); sendMessage.setReplyMarkup(forceReplyKeyboard);
sendMessage.setText(LocalisationService.getInstance().getString("onWeatherNewCommand", language)); sendMessage.setText(LocalisationService.getInstance().getString("onWeatherNewCommand", language));
DatabaseManager.getInstance().insertWeatherState(userId, chatId, CURRENTNEWWEATHER); DatabaseManager.getInstance().insertWeatherState(userId, chatId, CURRENTNEWWEATHER);
@ -802,8 +800,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
ReplyKeyboardMarkup replyKeyboardMarkup = getSettingsKeyboard(language); ReplyKeyboardMarkup replyKeyboardMarkup = getSettingsKeyboard(language);
sendMessage.setReplayMarkup(replyKeyboardMarkup); sendMessage.setReplyMarkup(replyKeyboardMarkup);
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
sendMessage.setText(getSettingsMessage(language)); sendMessage.setText(getSettingsMessage(language));
@ -816,8 +814,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
ReplyKeyboardMarkup replyKeyboardMarkup = getRecentsKeyboard(message.getFrom().getId(), language); ReplyKeyboardMarkup replyKeyboardMarkup = getRecentsKeyboard(message.getFrom().getId(), language);
sendMessage.setReplayMarkup(replyKeyboardMarkup); sendMessage.setReplyMarkup(replyKeyboardMarkup);
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
if (replyKeyboardMarkup.getKeyboard().size() > 3) { if (replyKeyboardMarkup.getKeyboard().size() > 3) {
sendMessage.setText(LocalisationService.getInstance().getString("onForecastCommandFromHistory", language)); sendMessage.setText(LocalisationService.getInstance().getString("onForecastCommandFromHistory", language));
@ -834,8 +832,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
ReplyKeyboardMarkup replyKeyboardMarkup = getRecentsKeyboard(message.getFrom().getId(), language); ReplyKeyboardMarkup replyKeyboardMarkup = getRecentsKeyboard(message.getFrom().getId(), language);
sendMessage.setReplayMarkup(replyKeyboardMarkup); sendMessage.setReplyMarkup(replyKeyboardMarkup);
sendMessage.setReplayToMessageId(message.getMessageId()); sendMessage.setReplyToMessageId(message.getMessageId());
sendMessage.setChatId(message.getChatId().toString()); sendMessage.setChatId(message.getChatId().toString());
if (replyKeyboardMarkup.getKeyboard().size() > 3) { if (replyKeyboardMarkup.getKeyboard().size() > 3) {
sendMessage.setText(LocalisationService.getInstance().getString("onCurrentCommandFromHistory", language)); sendMessage.setText(LocalisationService.getInstance().getString("onCurrentCommandFromHistory", language));
@ -1073,7 +1071,6 @@ public class WeatherHandlers extends TelegramLongPollingBot {
private static ForceReplyKeyboard getForceReply() { private static ForceReplyKeyboard getForceReply() {
ForceReplyKeyboard forceReplyKeyboard = new ForceReplyKeyboard(); ForceReplyKeyboard forceReplyKeyboard = new ForceReplyKeyboard();
forceReplyKeyboard.setForceReply(true);
forceReplyKeyboard.setSelective(true); forceReplyKeyboard.setSelective(true);
return forceReplyKeyboard; return forceReplyKeyboard;
} }
@ -1161,8 +1158,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(chatId.toString()); sendMessage.setChatId(chatId.toString());
sendMessage.setReplayToMessageId(messageId); sendMessage.setReplyToMessageId(messageId);
sendMessage.setReplayMarkup(replyKeyboard); sendMessage.setReplyMarkup(replyKeyboard);
sendMessage.setText(LocalisationService.getInstance().getString("chooseOption", language)); sendMessage.setText(LocalisationService.getInstance().getString("chooseOption", language));
return sendMessage; return sendMessage;
@ -1172,9 +1169,9 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(chatId); sendMessage.setChatId(chatId);
sendMessage.setReplayToMessageId(messageId); sendMessage.setReplyToMessageId(messageId);
if (replyKeyboardMarkup != null) { if (replyKeyboardMarkup != null) {
sendMessage.setReplayMarkup(replyKeyboardMarkup); sendMessage.setReplyMarkup(replyKeyboardMarkup);
} }
sendMessage.setText(getHelpMessage(language)); sendMessage.setText(getHelpMessage(language));
return sendMessage; return sendMessage;
@ -1184,9 +1181,9 @@ public class WeatherHandlers extends TelegramLongPollingBot {
SendMessage sendMessage = new SendMessage(); SendMessage sendMessage = new SendMessage();
sendMessage.enableMarkdown(true); sendMessage.enableMarkdown(true);
sendMessage.setChatId(chatId); sendMessage.setChatId(chatId);
sendMessage.setReplayToMessageId(messageId); sendMessage.setReplyToMessageId(messageId);
if (replyKeyboardMarkup != null) { if (replyKeyboardMarkup != null) {
sendMessage.setReplayMarkup(replyKeyboardMarkup); sendMessage.setReplyMarkup(replyKeyboardMarkup);
} }
sendMessage.setText(LocalisationService.getInstance().getString("rateMeMessage", language)); sendMessage.setText(LocalisationService.getInstance().getString("rateMeMessage", language));
@ -1203,8 +1200,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
message.getLocation().getLatitude(), message.getFrom().getId(), language, unitsSystem); message.getLocation().getLatitude(), message.getFrom().getId(), language, unitsSystem);
SendMessage sendMessageRequest = new SendMessage(); SendMessage sendMessageRequest = new SendMessage();
sendMessageRequest.enableMarkdown(true); sendMessageRequest.enableMarkdown(true);
sendMessageRequest.setReplayMarkup(getMainMenuKeyboard(language)); sendMessageRequest.setReplyMarkup(getMainMenuKeyboard(language));
sendMessageRequest.setReplayToMessageId(message.getMessageId()); sendMessageRequest.setReplyToMessageId(message.getMessageId());
sendMessageRequest.setText(weather); sendMessageRequest.setText(weather);
sendMessageRequest.setChatId(message.getChatId().toString()); sendMessageRequest.setChatId(message.getChatId().toString());
@ -1217,8 +1214,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
String weather = WeatherService.getInstance().fetchWeatherForecast(text, userId, language, unitsSystem); String weather = WeatherService.getInstance().fetchWeatherForecast(text, userId, language, unitsSystem);
SendMessage sendMessageRequest = new SendMessage(); SendMessage sendMessageRequest = new SendMessage();
sendMessageRequest.enableMarkdown(true); sendMessageRequest.enableMarkdown(true);
sendMessageRequest.setReplayMarkup(getMainMenuKeyboard(language)); sendMessageRequest.setReplyMarkup(getMainMenuKeyboard(language));
sendMessageRequest.setReplayToMessageId(messageId); sendMessageRequest.setReplyToMessageId(messageId);
sendMessageRequest.setText(weather); sendMessageRequest.setText(weather);
sendMessageRequest.setChatId(chatId.toString()); sendMessageRequest.setChatId(chatId.toString());
@ -1232,8 +1229,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
message.getLocation().getLatitude(), message.getFrom().getId(), language, unitsSystem); message.getLocation().getLatitude(), message.getFrom().getId(), language, unitsSystem);
SendMessage sendMessageRequest = new SendMessage(); SendMessage sendMessageRequest = new SendMessage();
sendMessageRequest.enableMarkdown(true); sendMessageRequest.enableMarkdown(true);
sendMessageRequest.setReplayMarkup(getMainMenuKeyboard(language)); sendMessageRequest.setReplyMarkup(getMainMenuKeyboard(language));
sendMessageRequest.setReplayToMessageId(message.getMessageId()); sendMessageRequest.setReplyToMessageId(message.getMessageId());
sendMessageRequest.setText(weather); sendMessageRequest.setText(weather);
sendMessageRequest.setChatId(message.getChatId().toString()); sendMessageRequest.setChatId(message.getChatId().toString());
@ -1246,8 +1243,8 @@ public class WeatherHandlers extends TelegramLongPollingBot {
String weather = WeatherService.getInstance().fetchWeatherCurrent(text, userId, language, unitsSystem); String weather = WeatherService.getInstance().fetchWeatherCurrent(text, userId, language, unitsSystem);
SendMessage sendMessageRequest = new SendMessage(); SendMessage sendMessageRequest = new SendMessage();
sendMessageRequest.enableMarkdown(true); sendMessageRequest.enableMarkdown(true);
sendMessageRequest.setReplayMarkup(getMainMenuKeyboard(language)); sendMessageRequest.setReplyMarkup(getMainMenuKeyboard(language));
sendMessageRequest.setReplayToMessageId(messageId); sendMessageRequest.setReplyToMessageId(messageId);
sendMessageRequest.setText(weather); sendMessageRequest.setText(weather);
sendMessageRequest.setChatId(chatId.toString()); sendMessageRequest.setChatId(chatId.toString());

6
src/main/java/org/telegram/updateshandlers/WebHookExampleHandlers.java

@ -26,16 +26,16 @@ public class WebHookExampleHandlers extends TelegramWebhookBot {
@Override @Override
public String getBotUsername() { public String getBotUsername() {
return BotConfig.USERNAMEWEBHOOK; return BotConfig.WEBHOOK_USER;
} }
@Override @Override
public String getBotToken() { public String getBotToken() {
return BotConfig.TOKENWEBHOOK; return BotConfig.WEBHOOK_TOKEN;
} }
@Override @Override
public String getBotPath() { public String getBotPath() {
return BotConfig.USERNAMEWEBHOOK; //arbitrary path to deliver updates on, username is an example. return BotConfig.WEBHOOK_USER; //arbitrary path to deliver updates on, username is an example.
} }
} }

Loading…
Cancel
Save