Deploying Telegram bot service to a shared host environment - webhooks

I want to run a Telegram bot service in a shared ASP.NET MVC host (Plesk). There is no access to the server.
Is there any way to use bot service on a shared ASP.NET host, without buying a dedicated server or VPS, or we have to use webhooks like ASP.NET webhook?
If so, is that the only possible way to deploy an ASP.NET bot service to a shared host environment?

You can deploy to Google's AppEngine Flexible that supports .NET and has free quotas.

Related

Whats the difference / connection between Azure App Service and Web App Bot?

I would like to understand what Azure does while creating a Web App Bot in Portal.
An Azure Bot Service Bot deployed to an Azure App Service Web App...
After creating a bot with Azure Bot Service i got the following ressources:
What's the difference or the connection between the resources (Web App Bot and App Service)?
The code should be located in Web App Bot right? Here the magic happens, development, channels, etc.
The user is interacting with the App Service throw an HTTP call. What happens if App Service receives the call?
And why I could configure CD on the App Service instead of Web App Bot?
From my understanding, the Web App Bot is the "locale" Bot I'm publishing to App Service to make him available?
Can anyone help me out to get a clear understanding?
Let us break down the different components involved.
The Web Bot (which is a web application) needs a web site to be deployed to. That is the App Service. That web site needs a web server to run on. That is the App Service Plan.
The Web Bot is the main part which you configure. The other components are infrastructure components and you don't need to worry about them much.
Your bot is actually an API, which will be hosted on App Service. So in case your bot receives many requests, You'll scale App Service to handle that.
Web App Bot is where you enable and configure the channels your bot will work with (e.g. Direct Line for voice)

Azure linux app service: Is it possible to publish two API projects in same app service?

We have set up an Azure Linux app service (API) and want to deploy two API projects (.Net Core) in the same app service. Is it possible in Linux based app service?
It's impossible.
You can refer to the answer in the post below.
Hosting Two Website Under one Web App - Azure Services
IIS can handler mappings and virtual applications and directories, you can't use virtual applications and directories in linux.
If you have more questions about azure web app, you can raise a support ticket on portal. You can also put forward your ideas and suggestions in the feedback, and optimize the product together with Microsoft official.

Why should I prefer Azure App Service over .NET REST Web API?

Why should I use Azure App Service and not just implement a common .NET RESTful Web API backend?
What's the explicit benefit of this service compared to a common .NET RESTful Web API backend hosted on Azure?
An Azure App Service is a place to host your web application or API. Normally when you have a .NET web API you host it behind IIS or something on a virtual machine.
Azure helps you with these common scenarios wit Platform as a Service (PaaS). An App Service completely abstracts the operating system and the way you host your web application.
App Service can host web apps both on Windows and Linux. You can use all kinds of frameworks such as PHP, .NET or Java. You can even host containers without worrying about the host.
A good sample to start with hosting your .NET Web App on Azure App Services can be found here: Quickstart: Create an ASP.NET Core web app in Azure
Yes, there is a huge difference between Azure App Service and .Net REST WebAPI backend on Azure.
Hosting on Azure can be done using two ways
Create your own VM, then install IIS and do all the required stuff
Use AppService Plan
AppService Plan allows you to leverage the powerful functionality of Azure. Here a separate VM is not assigned to you. Azure App service can scale automatically depending upon the Scaling rule which is not present in restful API hosted on Azure VM.
My question blatantly was a stupid Newbie question, and as such, I'm afraid it is non-sense, which I now know by the answers you've given.
I'm currently reading the book "Azure and Xamarin Forms" to learn Xamarin and Azure. Apparently it's outdated. It suggests to "create a Mobile App on Azure". From the book that Mobile App is just a plain App Service running a RESTful Web API with EF, but utilizing completely different namespaces to do so.
My question targeted towards these other namespaces. I didn't see a reason for them.
Apparently, Microsoft noticed the same. There is no "Mobile App" available in the Azure Marketplace anymore.
Azure App Service is a PaaS solution from Microsoft hosted on Azure. You can think of Azure App Service as some sort of "Micrsoft Heroku", because they work on a similar fashion. For many REST Projects, it can save you hours, if not DAYS of development. It has automatic TLS like heroku, but it is hosted on Azure instead of AWS and it can integrate very well with your existing Azure resources. One common pattern is to host the REST API on App Service and use a database service from Azure such as Azure SQL or Cosmos DB (which is a NoSQL service that, from the point of view of your app, it operates as MongoDB, but can be configured to behave as other DBMS).

Push Notification in .Net core 2.1 MVC hosted in WebApp

I am creating my website application in .net core 2.1. I have to deploy it in WebApp of Azure.
I am bit new to WebApp so not sure if I need to enable any service or any port on WebApp so Notfication works.
Otherwise normal way to show Notification is SignalR implemented.
1) Will SignalR will work for website hosted in WebApp?
If any Azure service that will do same please suggest
SignalR uses web sockets to connect with clients, so you will need to go into app settings and enable them for SignalR to work.
Here is a tutorial to help you set up your WebApp with SignalR:
https://learn.microsoft.com/en-us/aspnet/core/signalr/publish-to-azure-web-app?view=aspnetcore-2.2
Based on your scenario, Azure SignalR Service or Azure Notification Hub may be an option for you.
There is notification service in Azure Web Apps around sending push notification to Mobile Devices that are integrated with Azure.
In your case i assume you are talking about sending real time notifications within the web app ? Yes SignalR works great for that scenario , and you can look into dedicated SignalR service from Azure for this.
https://azure.microsoft.com/en-au/services/signalr-service/

Can We deploy Microsoft bot Application in IIS without Azure?

Is it possible to deploy Microsoft bot Application in IIS without Azure.
We have created a sample bot Application and running fine with the Emulator in local environment.
We would like to move the application to the Production and don't have Azure account and details.
Can we deploy bot application in the IIS in Windows server 2012 R2 as how we deploy Webservices or WCF Services ? Is it Possible without Azure.
If you are not using Azure Bot Service (i.e. Azure Functions), you can host your bot anywhere. You simply need to provide the endpoint for your bot during registration:
I had this issue too. And the answer is: Sure you can! But the bad new is, that you have to publish in a valid HTTPS. So I think in this case is more simple publish on Azure.
Yes i you use azure you can use you application anywhere and make sure credentials while configuring bot.
Dont forget to configure webhooks or endpoint url

Resources