Does anyone know if there is a portable class library (PCL) version of the RabbitMQ client libraries that could be used in the developmentof a Xamarin mobile application?
If nor does anyone know of a similar AMPQ client as a PCL
Thanks in advance
While using Xamarin, you can communicate (send/receive push-notifications) with rabbitMQ using Rabbitmq-web-STOMP plugin activated on broker end, and use socket-io at Xamarin (using web sockets).For details regarding how to do it in xamarin see here. Use the example code that gets generated after you install the stomp and stomp examples on rabbitServer by :
rabbitmq-plugins enable rabbitmq_web_stomp
rabbitmq-plugins enable rabbitmq_web_stomp_examples
for rabbitly-details have a look here, and into the source of "echo" example .
Well, RabbitMQ.Client requires .NET Standard 1.5, and Xamarin.Andorid and Xamarin.iOS provide.NET Standard 1.6: https://github.com/dotnet/standard/blob/master/docs/versions.md
P.S. make sure to convert your projects to package.json structure instead of "old" nuget packages.config. dotnet build tools are also a must (Visual Studio 2015 Update 3?)
Related
I am converting my Xamarin Forms Application to .NET MAUI.
In existing app we have used Microsoft.Bot.Connector.DirectLine(3.0.2) for using the Bot Framework Direct Line REST API.
Is Microsoft.Bot.Connector.DirectLine package supported in .net MAUI?
In the Microsoft.Bot.Connector.DirectLine Nuget Link I don't see the net6.0 as the compatible target framework.
If it's not supported is there any alternative package?
Any help is appreciated!
This is an old package which hasn't been updated since 2017. It likely doesn't support .NET 6.0 and probably won't be updated to support it.
The good news is that you do not need this package to communicate with a bot over Direct Line. You can use .NET Standard Library objects (such as HttpClient) to communicate with Direct Line as you would any other REST API. There may be other libraries and frameworks you could use as well.
See the Direct Line 3.0 Documentation to see how to use the API.
I followed the C# sample code here . NuGet package Microsoft.Bot.Connector.Teams has been added, but I still got error saying that IsComposeExtensionQuery() method does not exist.
I got the same error when I was building a messaging extension using aspnet core, mainly because the package Microsoft.Bot.Connector.Teams does not support .Net standard at the moment.
My solution is to copy the code from its repo. https://github.com/OfficeDev/BotBuilder-MicrosoftTeams
Actually it seems the code in that repo supports .Net standard, but has not been published to nuget. Hope it can be published soon.
In Visual Studio for .net projects I can use built in tools to generate API clients by swagger. It simply and works great.
This option is missing from Windows Runtime projects as well, like Windows 10 IOT ones.
What is the best way to create API clients by swagger for this? If there is no built in tool / extension for VS, any external tools are highly appriciated.
Thanks a lot!
I don't get your question completely; on Windows IOT Core you can run UWP (background) apps; they are compatible with .net framework and .net standard up to version 1.4. This should work with a generated client from swagger.
Also you can use Refit to create a REST client according to best practices based upon an interface with attribute decorations.
I have a SDK written in C# targeting Win10 UWP apps.
It uses SQLite and works perfectly on C# client apps.
But can a C++/javascript app use my SDK with the SQLite dependency?
A winmd (windows runtime component build) would be required in case the SDK has to be UWP compatible since a UWP app can be in C#/C++/javascript/Visual basic.
I have posted this in msdn forums and they say i would need a windows runtime component for all the 3rd party dependencies for it to work.
Have already tried wrapper projects and wrapper winmd build, it does not work.
I am unable to find any winmd build for SQLite library.
Please advise on what can be done here.
Any help is really appreciated.
But can a C++/javascript app use my SDK with the SQLite dependency?
Yes, as in msdn forums said, you will need to wrapper in WinRT component universal apps.
Have already tried wrapper projects and wrapper winmd build, it does not work.
I don't know what blocks you, but you can refer to Writing a SQLite wrapper component for universal Windows apps, there are detailed steps you will need to follow, and samples you may have a look.
I tried various approaches to make this project work and found some success in the following:
Following is the project structure I made along with dependencies :
Client Application (in C++):
Wrapper winmd library.
Wrapper winmd library (in C#): (I generate a winmd component from this project)
My SDK project
My SDK project (in C#):
SQLite Net.
SQLite Net Async.
Newtonsoft JSON.
When I build the client application, I get the wrapperlibrary.winmd file but I dont get the corresponding dlls from the 3rd party dependencies in the output directory (SQLite and Newtonsoft). So i manually copied the required dlls to the output directory of the C++ application. Now it seems to work correctly, I can verify correct usage of the 3rd party libraries and my C# code. Presently I am just trying to make the setup work as a poc and worry about the packaging later.
The issue I now face is that my SDK also has some UI elements, so essentially compiled .xbf files for the "XAML" I have.
I have asked this question in another thread to not go off main topic here.
trying to install websockets on windows Node.js.
I am getting native extensions require Visual Studio and Python.
My question is : Is it possible to take another compiler? Or do I really need VS (3,6GB) Download or are there alternatives, since I donĀ“t want to download that huge amount.
Linux has GGC , I suppose.
And do I need Python 2.X or Python 3.X.
Thanks for the replies.
Have a nice day.
You'll need visual studio in order to get the C++ compilers. You can pull down Visual Studio 2010 Express here, which is a much smaller download (694MB). For python, you'll need 2.6 or 2.7 as described on the node.js wiki on github.
Another alternate is to simply use the binaries already supplied by the node.js team. If you go this route, you won't have to compile the source yourself. From what I can tell, node should already support websockets. See a tutorial on how to set up a server using websockets here.
There are lots of ws-compatible JS-only modules which don't require C++ runtime/node/V8 headers/Waf/Python
Install node.js from pre-built package (~5mb download, includes npm), then do npm install sockjs (sockjs implements websockets server as one of available transports). Then connect using HTML5 webscockets client or using sockjs-client library.
List of other modules on Node.js wiki