What's the better way to communicate users in my WP7 app? - windows-phone-7.1

In my app i am maintaining the users .I need to provide the communication between the users.
For that i want to implement chat in my app.What's the better way to implement the chat in wp7?
I saw socket programming it seems to be security problem.
And i saw XMPP Framework it is licensed may need to package when deploy.
Tell me other alternatives to implement chat in WP7..
Please tell me ...
Thanks,

One, another way to implement chat functionality will be to use WCF service. You can have a server, where you'll have WCF services running to grab and send the data. It has its own pros and cons. Like, it will be secure and you can implement/control WCF services easily. However, you'll always need to pull the data. Push will not work.

Related

Best Practices / Approaches for integrating API with Dynamics CRM

So we are in the process of starting our integration of our SOAP API with Dynamics using OData. I would like to get some ideas on how other have approached such an integration from a Dynamics perspective.
How do you manage security for Dynamics so that only a specific authorized application, such as the API, can make modifications to Dynamics data?
Similarly, how do you manage views? Do you create a copy of an existing view for everything you want to query or is there a better way?
Are there other considerations that I should be taking into account that others have struggled with in the past?
Here's some tips for you:
For the security, you can create a non-interactive user. It's ment to be a service user that can do operation without connecting to the UI. It requires no licence.
https://learn.microsoft.com/en-us/dynamics365/customer-engagement/admin/create-users-assign-online-security-roles#create-a-non-interactive-user-account
Actions can be invoked from Web API and can act as entry-point for external applications. You should use those instead of coding something outside of the CRM.
https://learn.microsoft.com/en-us/dynamics365/customer-engagement/customize/actions
For views, I use the Save As button. When I need to copy views layout I use the XrmToolbox.
https://www.xrmtoolbox.com/

How to connect from your iOS app to a backend server? how to read, modify and fetch data to backend server?

I am new in developing iOS applications. I like to learn communication between my app and a specific back-end server(which is written in ruby). I would like to learn how to read, fetch and modify data on the back-end server? I do not have any idea where I should start? I am very welcome if you could refer me to any online resource/tutorial for this topic.
First, you have to create an API in ruby. Here is a tutorial on how to do it: https://www.codeschool.com/courses/surviving-apis-with-rails.
After that, when you are sure that your API is working correctly, you can write a service for HTTP communication. You can do it by yourself, but in my opinion, a much better option would be using the third party for that. I prefer using AFNetworking: https://github.com/AFNetworking/AFNetworking.
You can also use Heroku. First you can create your API and make some tests then implement to your server.

ios native app talking to an API or direct database connections?

Folks,
Designing an ios application, and would like to confirm my strategy. There is a database (dynamo/mongo/etc) i am building up, which the app needs to make use of. Is it smart to front the database with an API, and have the ios app authenticate against the api.
This way the app makes calls to the api instead of directly to the database?
Would you suggest node.js be a good place to start crafting the web api with?
Thanks!
Yes, access the data via an API. Whether fancy authentication is needed, depends on what is stored in your database, and what your application is designed to do. Here is one resource (among millions) on API design: http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api
Also, here is a popular networking library for iOS: https://github.com/AFNetworking/AFNetworking
As for what technology to use, that too open ended and you will get 10 answers for every technology available. This should help though: https://softwareengineering.stackexchange.com/q/154519/44948

Can an iOS app consume a WCF service using wsHttpBinding?

I am building a WCF service now, that has a wsHttpBinding endpoint.
The client for now is WPF.
I would like to know if in the future, it would be possible to develop an iOS application that would be able to connect to my WCF service endpoint (it has to be wsHttpBinding, because I need security, reliability and ordered messaging).
Thanks.
I researched a bit and from what I found, it is not possible (at least not easily), please inform me if there is a way
For security I followed the following solution, which fulfills my needs:
Building .NET WCF service for iPhone with authentication
Usually not, but it depends how you configure the WSHttpBinding. If you use any kind of message level security almost surely you will not be able to call it from iOS. I'm saying almost b/c iOS supports sendins soap over http and some of the scenarios (useranme) are not complex so in theory you could manually push them to the soap. But for the most part basicHttpBinding is better (and also prefer transport security).

Need my apps to talk to each other

In a DELPHI 2007 application that I am developing some prospect clients just found interesting to be able to share data and information with each other.
They all have the same application.
All have independent Databases
But all have the same installed application and there are some data types that they might want to share (replicate) between their databases.
How can I enable them to share data with other users of the same application program, but not to everybody on the whole internet.
I would like this to be as automatic as possible, as I already have considered approaches that involve manually sending emails.
I know Datasnap is an option, is there any other.
UPDATE:
The idea is to enable companies that have the same application to be able to share data.
They should be able to select what partner and what to send.
I have been investigating datasnap, but would like to know if there is another way to do this
Another standard way to connect distributed applications and share data and information is through some Message-oriented middleware (MOM). There are many open source middleware products (message brokers) available, which can be used over Delphi client libraries, even in multithreaded Delphi server applications. (Disclaimer: I am the author of message broker client libraries for Delphi and Free Pascal)
There are many essential differences between web services and message brokers, like peer-to-peer and publish/subscribe communication models. They also play a key role in enterprise application integration patterns.
One standard way to connect applications to other applications is to make a web-service, and make a client that consumes that web-service, called a web-client. Technologies like SOAP and REST refer to such web service and web clients.
Your question is vague, perhaps due to english not being your language, but you should probably edit it and be more specific.
If all your applications are going to talk directly to each other that is called "peer to peer networking" and there are huge problems with enabling that kind of communication directly over the internet. It is much easier if you build a server that all these applications will connect to.
As a sample, consider the IRC Chat service, and consider writing a Web Service that will be the Chat Server, and consider all your clients to be "Chat clients". Sharing data could be the same idea as creating "rooms" or "channels" on a chat server.
I get the idea that you want something like a Peer to Peer Data Replication Service. I think that the closest you're going to get to that is something like "RSS Feeds" (used by blog syndication services). You subscribe to them via a simple web service, and pull down the new content on some periodic basis. Since that data has to be published to a central server, that means, that a peer to peer approach is out of the question. If you don't have your own web server running on a web hosting service, or on a "cloud", and you need a truly peer to peer solution, I am not aware of any way to do that, at least not without an incredible custom engineering effort.

Resources