Does IBM bluemix have some sort of incoming or inbound email service or APIs? - api

Does bluemix (https://console.ng.bluemix.net/) have any incoming mail system for their apps which is similar to Google App Engine's Receiving Mail system (https://cloud.google.com/appengine/docs/python/mail/receivingmail).
Thanks.
PS: If possible, please share some links so I can begin exploring!!

as already suggested on the previous response Bluemix provide a outgoing email service using SendGrid
https://console.ng.bluemix.net/catalog/sendgrid/
For incoming email service, there is no service provided on Bluemix, but there isn't any limitation in integrating your application on Bluemix with an external email service, using its own POP/IMAP interface
How to integrate your app with an external email service is depending from the language/technology you wish to use, for example with PHP you could use its IMAP extension
http://php.net/manual/en/intro.imap.php
to read from an external service using IMAP or POP3
Moreover using an external email service may allow you to use that service for sending email through SMTP, instead of using SendGrid: for example using PHP runtime you could use
https://github.com/PHPMailer/PHPMailer
to integrate with an external SMTP service (usually available with an email account as well as the POP3/IMAP one)

Related

How to access and authenticate a Google Apps Script doPost() Pub/Sub push endpoint properly?

Overall flow
I'm working with Google Cloud Platform (GCP), Google Apps Script (GAS), and the Pub/Sub service within a Google Workspace domain environment. This is the flow of requests/data, which works but clearly has auth issues:
GCP Pub/Sub service receives messages for a specific topic
Pub/Sub forwards the message to a push endpoint URL by POST
The push endpoint is a doPost() function within Google Apps Script (GAS), published as a Web App
Details
I have enabled authentication for the Service Account used in the Pub/Sub delivery type options, i.e. Pub/Sub signs a JSON Web Token (JWT) and sends the JWT in the authorization header of the push request. Edit: The Service Account (Client ID) has a domain-wide delegation for the Scopes
https://mail.google.com/
https://www.googleapis.com/auth/drive.scripts
https://www.googleapis.com/auth/drive
Web App deployments come with two options:
"Execute as"
Me (name#workspace-domain.tld)
User accessing the web app
"Who has access"
Only myself
Anyone within {workspace domain}
Anyone with Google account
Anyone
Right now, the web app executes as Me with Anyone having access. And it works.
Problems
The push endpoint is publicly accessible, but should not be. (1)
Follow-up: "The push endpoint must be a publicly accessible HTTPS address" (source) anyways, so "Who has access" will be set to "Anyone" by design.
Limiting the "Who has access" option to "anyone within {domain}" leads to unacknowledged messages inside the Pub/Sub subscription, doPost() will not run, but the endpoint returns straight 40X HTTP codes (probably forbidden).
--> Question: How can I promote the Service Account to being seen as a user within the workspace domain, so it has access to the endpoint?
The push endpoint should validate tokens sent by Pub/Sub. (2)
In GAS, doPost() has no access to (authorization) headers sent to the web app endpoint URL (unfortunately and as far as I know). However, ScriptApp.getIdentityToken() gets an OpenID Connect identity token for the effective user, if the openid scope has been granted.
--> If problem (1) was solved, is it possible to authenticate and authorize the messages send to the endpoint within the GAS doPost() function using ScriptApp.getIdentityToken()? From my understanding, the Service Account should also become the effective user, i.e. "Execute as" = "User accessing the web app".
I might be missing something. So, thanks for any tips and advice!
Doc links
Google Apps Script: Web Apps
https://developers.google.com/apps-script/guides/web
GAS: ScriptApp.getIdentityToken()
https://developers.google.com/apps-script/reference/script/script-app#getidentitytoken
Using push subscriptions: Authentication and authorization by the push endpoint
https://cloud.google.com/pubsub/docs/push#authentication_and_authorization_by_the_push_endpoint

Service Bus for Windows Server SAS authentication over http

I have a question about client authentication on Windows Service Bus for Windows Server using the REST API. For my solution the clients need to communicate with the Service Bus Queues over HTTP and I can not use Windows Integrated Security. That leaves me with SAS. I have looked at the Microsoft Page where Authentication is described for Service Bus 1.1 but can't figure out how the client can acquire the access token. I know that you can acquire the token calling the STS using the Microsoft.ServiceBus.TokenProvider but that is not an option for my clients. So is there a way to acquire a token providing an access key and name over http to the Service Bus?
Many thanks
There is a sample (linked below) that shows how you can create your own token. With SAS you do not need a service to issue tokens, and can pre-create and distribute them to clients:
http://code.msdn.microsoft.com/windowsazure/Shared-Access-Signature-0a88adf8/sourcecode?fileId=81470&pathId=1811741783

Cannot register in sample BlackBerry push application

I am developing a BlackBerry application in which I need to use PUSH API. I already have registered with RIM and they have sent me the credentials for evaluation service. In my BlackBerry device, I installed sample push API application just to test that the push messaging works. After setting the content provider URL which is publicly accessible, I entered all the details for the sample application to register the it for receiving notification messages. When trying to register it asks for username and password but I don't know what they are for. In the email received from RIM, there are passwords for server application and content provider admin portal applications but not for the push client.
When I added an arbitrary username and password it fails with the message that java.lang.Exception Registration with Push API failed, caused by port is unavailable. But when I unregister it successfully unregisters the user with the given arbitrary username and password. By the I use the port given in the RIM's email.
I have no idea why this happens and I appreciate immediate response from you. Thank you.
The first thing to point out is that the RIM sample push application is ridiculously overcomplicated. The username and password you are referring to are used to authenticate against the sample push initiator web application which runs on your tomcat server. It doesn't matter what you put in there, they are not used for authentication. I can only assume they were added to show you that you can send a username and password to a web based service.
The only things you need in your BlackBerry app to register for the push service are:
Push Application ID (e.g. 2672-c870l6c924r1i298O4o33cc5391y0e75134)
Push Port (e.g. 31940)
BlackBerry Push Server URL (e.g. http://pushapi.eval.blackberry.com)
The port is unavailable message you're receiving is probably because the device you're using has not been provisioned for BlackBerry Internet Services (BIS). Make sure it has a SIM with an active BlackBerry data plan.

SMSC interconnect

I am curious about SMS aggregators and I would like to get info about build one but I have no point to start getting info. Do you know?
Necessary hardware/Software
Good SMSCs to start the bussiness
Most price-competitive SMSCs
Minimum SMS volume to start
Any contact/company
To build your own you could probably start by registering to become a PRSP and content provider. Then you could get a short code from a Mobile Service Provider. Connect to the Mobile Service Provider using SMPP Protocol.
The Mobile Service Provider should give you cridentials: username passwords etc to connect to them.
You could then use Kannel: Open Source WAP and SMS gateway to configure a value added service gateway that you could use to provider sms aggregation services amongst other services such as football updates etc.
You could also host more than one service(client) on the same shortcode/vas gateway.

Wildcard email gateway / software / api

is there any existing software (web based application), which allows to have all incoming emails (to wildcard email *#domain.com) to be posted via REST API to my web application?
The same thing Tumblr or Posterous does, it assigns you an email (for example trrehret3453#tumblr.com) where you can send text and pictures and it automatically posts it to your blog, I need exactly the same.
Maybe there's a mail server which can do that? I'm running Debian Linux.
Thanks!
Found this service: http://www.emailyak.com, they provide REST API for incoming emails.