func publishMessage(msg string) error { topicarn, topicErr := getTopicArn() if topicErr != nil { log.Println(topicErr) return topicErr } p, s, _, _ := getSettings() auth := aws.Auth{AccessKey: p, SecretKey: s} region := aws.Region{} region.Name = "us-east-1" region.SNSEndpoint = "http://sns.us-east-1.amazonaws.com" awssns, _ := sns.New(auth, region) if awssns == nil { return fmt.Errorf("Can't get sns reference for %v %v", auth, region) } opt := sns.PublishOptions{} opt.TopicArn = topicarn opt.Message = msg opt.Subject = msg _, pubErr := awssns.Publish(&opt) if pubErr != nil { return pubErr } return nil }
func getQueue(name, public, secret string) (*sqs.Queue, error) { auth := aws.Auth{AccessKey: public, SecretKey: secret} region := aws.Region{} region.Name = "us-east-1" region.SQSEndpoint = "http://sqs.us-east-1.amazonaws.com" SQS = sqs.New(auth, region) if SQS == nil { return nil, fmt.Errorf("Can't get sqs reference for %v %v", auth, region) } return SQS.GetQueue(name) }