Skip to content

Instantly share code, notes, and snippets.

@tzmfreedom
tzmfreedom / agent.py
Last active August 29, 2015 14:06
PolicyAgent side application with Python/Flask
# -*- coding: utf-8 -*-
from flask import Flask, request, render_template
import urllib.request
import json
BASE_URL = "http://test.example.com:8080"
#値の検証とuidの取得
def validate(token):
req = urllib.request.Request(
@tzmfreedom
tzmfreedom / sf_oidc.py
Created September 13, 2014 13:30
Sample for Salesforce OpenID Connect.
# -*- coding: utf-8 -*-
from Crypto.Hash import SHA256
from Crypto.PublicKey import RSA
from Crypto.Signature import PKCS1_v1_5
from Crypto.Util.number import bytes_to_long
from flask import Flask, request, session, render_template
from urllib.error import HTTPError
import urllib.request
import base64
import json
import serial
import urllib.request
import json
CLIENT_ID = "input your client_id"
CLIENT_SECRET = "input your client_secret"
#chatterにポストする
def postFeedItem(val):
try:
#include <SPI.h>
#include <Ethernet.h>
const int BUTTON = 7;
int val = 0;
int old_val = 0;
//ethernetシールドのmacアドレス
byte mac[] = {0x**, 0x**, 0x**, 0x0F, 0x8B, 0x8A};
/**
* クエリ発行してスプレッドシートに書き込み
*/
function query(q) {
checkAuthorization();
//クエリ発行
var prop = PropertiesService.getUserProperties();
var sessionInfo = JSON.parse(prop.getProperty("session_info"));
var res = UrlFetchApp.fetch(sessionInfo.instance_url + "/services/data/v30.0/query/?q=" + q, {
/**
* 更新クエリ
*/
function updateAccount() {
checkAuthorization();
var prop = PropertiesService.getUserProperties();
var sessionInfo = JSON.parse(prop.getProperty("session_info"))
//選択したセルがSalesforceのAccountIDであることを想定
var accountId = SpreadsheetApp.getActiveRange().getValue();
var res = UrlFetchApp.fetch(
/**
* カスタムオブジェクトGAS__cを作成する。
*/
function createObject() {
//package.xml作成
var package = Utilities.newBlob("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\
<Package xmlns=\"http://soap.sforce.com/2006/04/metadata\">\
<types><name>CustomObject</name><members>GAS__c</members>\
</types><version>30.0</version>\
</Package>").setName("hogehoge/package.xml");
var AUTHORIZATION_URL = "https://login.salesforce.com/services/oauth2/authorize?response_type=code&client_id={client_id}&redirect_uri={redirect_uri}&state={state}";
var ACCESS_TOKEN_URL = "https://login.salesforce.com/services/oauth2/token";
var CLIENT_ID = "input your client_id";
var CLIENT_SECRET = "input your client_secret";
var REDIRECT_URI = "https://script.google.com/macros/s/********************/usercallback";
/**
* メニューの設定
*/
function onOpen() {
Private Sub login()
Dim sfc As SfdcSoapXml
Set sfc = New SfdcSoapXml
Dim body As String
body = sfc.LOGIN
body = Replace(body, "{{username}}", "*******")
body = Replace(body, "{{password}}", "******")
Dim response As String
response = callSoap("https://login.salesforce.com/services/Soap/u/30.0", body)
Dim objXmlHttp As Object
Set objXmlHttp = createObject("MSXML2.XMLHTTP")
objXmlHttp.Open "GET", "https://***.salesforce.com/services/data/v30.0/query/?q=SELECT id FROM Account")
Call objXmlHttp.setRequestHeader("Content-Type", "application/json")
Call objXmlHttp.setRequestHeader("Authorization", "Bearer " + sessionId)
Call objXmlHttp.setRequestHeader("Accept", "application/xml")
objXmlHttp.send
CallRestApi = objXmlHttp.responseText