[
https://issues.apache.org/jira/browse/CAMEL-9969?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15293135#comment-15293135
]
ASF GitHub Bot commented on CAMEL-9969:
---------------------------------------
GitHub user nicolaferraro opened a pull request:
https://github.com/apache/camel/pull/988
CAMEL-9969: Added a component for Telegram
I created a new component for Telegram.
The component uses the Telegram Bot REST API
(https://core.telegram.org/bots/api).
There are multiple Java wrappers for the REST API available as open source
projects, but
many of them are not "mature" to be included in the camel component.
An alternative option could have been
https://github.com/rubenlagus/TelegramBots, but it is
released under GPLv3 license.
Since the Bot API are simple and well documented, I decided to include a
Java REST interface directly inside the component.
The Java API that wraps the REST services contains many features (Text
messages, audio, video and photo), but it is not 100% complete.
I don't know if it's worth completing it, or maybe leave some issues on
Jira to complete it later.
The API is self-consistent at this time, even if it is not complete.
The Telegram services do not allow two bots to exchange messages, so
integration tests would be impossible without a human intervention.
So I divided the tests in two stages:
- Internal tests: by mocking the Telegram Service, I verify that the
service is called passing the correct parameters
- Integration tests: I call directly the Telegram Service and verify the
interaction using my smartphone
Integration tests are disabled in surefire CI (unless you provide some
environment variables).
I added a .adoc file for documenting the endpoint (consumer and producer).
I haven't put the documentation on the Wiki pages because...
I think I had better wait for a review :)
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/nicolaferraro/camel CAMEL-9969
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/camel/pull/988.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #988
----
commit a5118992ae09055fe8fb1bffff68e4a52c64edb3
Author: Nicola Ferraro <[email protected]>
Date: 2016-05-20T10:26:30Z
CAMEL-9969: Added a component for Telegram
----
> Adding a component for Telegram
> -------------------------------
>
> Key: CAMEL-9969
> URL: https://issues.apache.org/jira/browse/CAMEL-9969
> Project: Camel
> Issue Type: New Feature
> Reporter: Nicola Ferraro
> Priority: Minor
>
> I think it is worth adding a camel-telegram component, to allow users
> integrating their apps with Telegram (https://telegram.org/).
> Telegram is a popular messaging application (similar to WhatsApp), providing
> good security mechanisms and an open source communication protocol and APIs.
> According to some statistics (https://telegram.org/blog/100-million), it has
> about 100 million active users worldwide (as of May 2016).
> Telegram allows registering Bots (accounts operated by software) that can be
> ultimately used to let a Camel based application communicate with other
> Telegram users.
> I have developed a first (working) draft of the camel component and I'm
> currently working on it to include tests and additional features.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)