This node.js example connector allows you to make your Teneo bot available on LINE. This guide will take you through the steps of creating a new LINE Provider and deploying the connector to respond to events sent by Teneo.
You can find the source code of this project on Github.
Making the connector available via https is preferred. Ngrok is recommended for this.
The LINE app should already be running with an active account on your device.
Your bot needs to be published and you need to know the engine URL.
Install dependencies by running the following command in the folder where you stored the source:
A file .env.sample file is included in the project. Use it as a reference to create a .env file in the folder where you stored the source, and add values for CHANNEL_SECRET and TENEO_ENGINE_URL. CHANNEL_ACCESS_TOKEN will be set later on.
CHANNEL_SECRET=<that value obtained in the previous section>
CHANNEL_ACCESS_TOKEN=<value issued in the upcoming section>
Start the connector in Console:
Next, we need to make the connector available via https. We'll use ngrok for this.
Start ngrok. The connector runs on port 3000 by default, so we need to start ngrok like this:
ngrok http 3000
Running the command above will display a public https URL. Copy it, you will need it in the next section.
Update Webhook URL in the line provider
Once the connector is available via https, copy the public https URL from the previous step and paste in into the Webhook URL of your Line Channel provider. Also, add a /callback suffix to the URL field. The final Webhook URL should look roughly like this:
Click the blue 'Update' button to save the url.
Update Webhook URL in the Line Provider
Next, in the 'LINE Official Account Features' section > 'Auto-reply messages', click on 'Edit'.
Set 'Response mode' to Bot. Disable 'Auto-Response' and 'Greeting Message'.
Set 'Webhooks' to Enabled.
Go back to 'Messaging API' > 'Webhook Settings' and set 'Webhook URL' by using the public https URL obtained from ngrok in the previous step, and attaching the suffix '/callback'. The URL will look roughly like this:
Click 'Verify' and also Enable 'Use Webhook'.
Browse to 'Message API' > Channel Access Token. Click issue, and copy the 'Channel Access Token' value for later use.
It is very important to note that this token must be re-issued everytime the Webhook URL is changed, to prevent authentication errors.
Update and restart the Connector
Finally, update the CHANNEL_ACCESS_TOKEN variable in .env file of your project source with the 'Channel Access Token' value obtained in the previous step:
TENEO_ENGINE_URL=< your_engine_url >
CHANNEL_SECRET=< The value obtained in previous steps>
CHANNEL_ACCESS_TOKEN=< 'Channel Access Token', from the previous step >
Restart the connector in Console:
Start chatting with the bot.
Go back to the Basic Settings section of your Provider, and locate the QR code shown in the bots section. Use it to add your bot as a new contact to your LINE app.
That's it! Your bot should now be available in LINE and responding to messages that are sent to it.