Track read/unread emails only on certain devices - email

I use a mailbox shared with some colleagues, each one of us use pop3 because each one wants to keep track of which emails has been read by himself. (Each one needs to read all the emails of that mailbox even if someone else has already read it).
Now i would use that mailbox on my different devices (iPhone, Mac, pc, etc) and i would love if should be possible to keep track of the emails read by me throught my different devices.
Is that possible?

If you use the same web based (POP3) email reader on all devices then you will achieve your goal.
You cannot do this by staying with different mail clients on all of your devices, changing server side only, because a POP3 server does not track who reads what at all.
AFAIK IMAP stores all information primarily on the server side, so it may be possible what you want even on server side. But then you have to switch to IMAP for everybody or you have to import the mails into a private IMAP server for you.

Related

Sending data directly between phones that are not co-located

I have an idea for an iPhone app that will make billions of dollars for me, and help me take over the world. I am currently designing the architecture of the application. I had originally assumed that I would need to create and host a database that would allow users to upload their data and share it with other, targeted, users. But I thought it would be better if the users could send their data directly to each other without having it stored in a database. However, I haven't been able to find anything that would suggest this is possible.
Is it possible to send data between iPhones that are not in close proximity (bluetooth) and not on a LAN? For instance...User #1, who is in Tennessee, creates some information and hits "Send to others" and it sends that information directly to User #2, who is in Arizona, and User #3, who is in Maine. Could the text messaging functionality be hacked to do that?
(I realize that the phones belonging to Users #2 and #3 would have to be on, and running the app that would receive the data)
I am new to mobile development, and I am still getting used to the functionality of mobile devices so, I am certain this is a dumb question. But, it is worth asking because, if it can be done, this would dramatically change the architecture (and maintenance costs) of this application.
Thanks, in advance, for whatever advice/pointers you can give.
This is something handled by using the publish - subscribe pattern. You may want to look into a plug 'n play service such as pubnub. That will let you do just that. Phones that should be receiving each other's messages will have listeners set up on the same pubnub channel, and will receive a notification when any of the other phones publish to that channel. Something like pubnub has a pretty simple API/SDK that you can use to get a prototype up and running pretty quickly (and for free, at least at first).
User #1's app sends the message to your server. You server does an APNS push to the phones of users #2, and #3. They don't even need to be running the app.
No need to mark this correct or up-vote it, but I will take a high-paying job in the new world order.
Amazon has an application service called Simple Queue Service (Amazon SQS) which Allows you to create queue's with messages in them tat app's can subscribe to.
To quote their page:
Amazon Simple Queue Service (Amazon SQS) offers a reliable, highly
scalable, hosted queue for storing messages as they travel between
computers. By using Amazon SQS, developers can simply move data
between distributed components of their applications that perform
different tasks, without losing messages or requiring each component
to be always available. Amazon SQS makes it easy to build an automated
workflow, working in close conjunction with the Amazon Elastic Compute
Cloud (Amazon EC2) and the other AWS infrastructure web services.
Amazon SQS works by exposing Amazon’s web-scale messaging
infrastructure as a web service. Any computer on the Internet can add
or read messages without any installed software or special firewall
configurations. Components of applications using Amazon SQS can run
independently, and do not need to be on the same network, developed
with the same technologies, or running at the same time.
They have an iOS API to integrate it into your app, and it is free for up to 100,000 messages per month and then $0.01 per 10,000 messages after that.
More info here:
http://aws.amazon.com/sqs/
Is it possible to send data between iPhones that are not in close
proximity (bluetooth) and not on a LAN?
The two devices obviously need some kind of connectivity.
For instance...User #1, who is in Tennessee, creates some information
and hits "Send to others" and it sends that information directly to
User #2, who is in Arizona, and User #3, who is in Maine. Could the
text messaging functionality be hacked to do that?
The problems here are:
helping each device discover the correct address for the others, and...
ensuring that the devices can reach each other.
Mobile devices are constantly moving around on the network and changing their IP addresses as they go. As you're driving to work, your device may have Internet access through it's 3G connection, except for those times when you're driving through a tunnel and don't have any connectivity at all. Once you enter your building, a wifi connection becomes available, so the device switches to that. But your company's network has a firewall that blocks incoming connections, and it's impossible to know in advance which IP address you'll get from the DHCP server at any given time anyway. The same is true for the folks in Arizona and Maine and wherever else.
A server, on the other hand, is usually located at an address that's both easy to discover (thanks to the Domain Name System), easy to reach, and almost always available. For those reasons, it's common to have mobile devices communicate with each other by going through an intermediate server.

Simulating ActiveSync load from IOS and Android based client to and Exchange Server

I'm developing an Exchange plugin that may effect ActiveSync operations. I am now looking for a quick way to generate a high load of sync/fetch operations that will simulate multiple ISO and Android devices which are tring to sync emails from 10,000 mailboxes.
It was able to load 10,000 mailbox to my Exchange server, but it seems I can not sync those mailboxes when sending a request with SyncKey=1 and Class=Email. It always fails with an object not found status code, even when the mailbox is filled with messages.
But, as soon as I configured a real IOS or Android Exchange client with a specific mailbox, suddenly it's possible to sync the mailbox.
Is there an easy way to configure this initial state on all of those mailboxes, so I would be able to sync them all later with a simple Sync command (SyncKey=1 and Class=Email) ? Or do you have any other idea how to generate this kind of load?

Is it possible to send a message to a fax from iPhone/iPad

Is it possible to send a message to a fax receiver from an iPhone/iPad application? Or do I need to use some online services? If so, which should I use?
The iPhone/iPad can not be used to send faxes in a traditional manner, unfortunately, except in the case that it is used as a simple modem by a computer (which I don't actually think is possible as it isn't a CDC-class device.) There might be some applications available that are frontends to web services, however.
Barring that, you can send faxes online using http://www.efax.com, but there are a lot more free fax providers if you search.

Can an iPhone app act as a server to send messages or push notifications?

I want to write an iOS app that can act as a client and a server to other iPhones over the cellular data network (i.e., without a typical centralized server). The goal is to share series of about 200 short event messages, one at a time, from the iPhone server to multiple iPhone clients by some means of notification. Apple Push Notification service would be fine for such notifications, but there is no need to use it specifically.
I think sending push notifications from one iPhone to another is possible by connecting to gateway.push.apple.com from the serving iPhone as described in the Local and Push Notification Programming Guide, but I can't find anyone else discussing this approach (maybe it's too obvious?).
The reason for all this is an attempt to avoid the overhead of infrastructure. If this isn't feasible, alternatives which minimize or avoid additional hardware are welcome.
Requirements:
Communication must be [strictly] over cellular data network
Wi-Fi isn't available
Bluetooth doesn't have enough range
Unidirectional communication with an iPhone server multicasting to many iPhone clients
No jailbreaking
Ideally the serving phone's battery will be able to handle this without a recharge
Update 5/4/11 2:12 AM EST: Just to be clear, I don't have any particular requirement to use APNs; I thought it may have been feasible in this setup, but from the discussion below, it sounds like that's not the case. However, I'm still interested in any other system that could help me achieve the same end result with some type of message passing or similar form of communication.
Theoretically you should be able to write a iOS app that can connect to the APNS and send notifications to other devices running your applications. However, your main problem will be to actually acquire the 'tokens' of other devices. When you have a centralized server doing the job, its always online and thus, the clients can 'talk' to it via http and register them self (giving their tokens to the server in the process). Thus the server knows the client token and it can use them to send notifications to the clients via APNS.
However this is not possible in the scenario you are talking about. But this is not to say its impossible. May be you could use an email account X, to store all client tokens. Every client will send a email to this account with their token in it. So when a another 'client' want to send a notification to another client, it can find out the token by reffering to the inbox of the email account (you can cache this stuff and optimize it in a zillion ways of course).
But the point is some how a (third party(ex: email service provider)/your own) server that is online 24/7 will be involved in the process.
Let us know how you progress with this. It would be interesting to know.

iPhone - E-Mail APIs

I've seen some custom libraries for sending e-mails, but are there any available for receiving them? I know of numerous ones that are available for the mac, but not for the iPhone - and I mean, MobileMail.app must do it somehow :P
Has anyone got any ideas on this?
You can port most any POP or IMAP client code that can run inside a single process... however an app on a stock OS device is sandboxed off from the email credentials that a user enters in the Settings app, so an app will have to ask for its own email login credentials and do its own email protocol handling.
Apple also seems to reserve the right to reject apps that merely duplicate the built-in Mail app.
I'm a little confused as to what you're trying to achieve. DO you mean that you want the app to accept SMTP traffic and act as an MTA - ie receive mail? Or did you merely want to connect to an MTA and operate on the messages stored elsewhere.
If the latter then Hotpaws's answer is a good one.
If the former then your bigger problems are going to be in terms of maintaining MX records. Perhaps a mediated service in which you have a store and forward MTA on a static IP that forwards on connection to the app. MTAs should still support this as that's how MTAs used to operate back when entire domains were connected via occasional dial-up.
Wow - I'm old.