Keypress numpad problem

Hi I’m using a French keyboard and I would like to control an action with a number. Actually even if i change the string key it doesn’t work with numbers. Otherwise everyring is okay with letters. Here is what i have :

using UnityEngine;
using System.Collections;

public class ShutterController : MonoBehaviour {

	public string keyPress = "1";
	public bool startUp = true;
	public float upHeight = 2f;
	public float downHeight = 0f;
	public float speed = 2f;
	public float speedscale = 4f;

	public float upScale = 1f;
	public float downScale = 2f;

	private bool lastMoveWasUp;

	void Start () {
		if (startUp) {
			// si le volet est en position haute de depart, le bouger vers la position haute.
			transform.localPosition = new Vector3 (transform.localPosition.x, upHeight, transform.localPosition.z);
			lastMoveWasUp = true;

			// scale position fine
			transform.localScale = new Vector3 (transform.localScale.x, upScale, transform.localScale.z);
		} else {
			//si le volet est en position basse au depart, le bouger vers la position basse.
			transform.localPosition = new Vector3 (transform.localPosition.x, downHeight, transform.localPosition.z);
			lastMoveWasUp = false;	
			//scale position large
			transform.localScale = new Vector3 (transform.localScale.x, downScale, transform.localScale.z);
	void Update () {
		if (Input.GetKeyDown(keyPress)) {	

	void Toggle () {
		if (lastMoveWasUp){
			//si le dernier mouvmement remontait vers le haut, descendre vers positon basse.
			iTween.MoveTo (gameObject, iTween.Hash ("position", new Vector3 (transform.localPosition.x, downHeight, transform.localPosition.z), "speed", speed, "easetype", "linear"));
			lastMoveWasUp = false;
			// scale position large
			iTween.ScaleTo(gameObject, iTween.Hash("y", downScale, "speed", speedscale , "easetype", "linear"));
		} else {
		 	// si le dernier mouvement descendait vers le bas, remonter en position haute.
			iTween.MoveTo (gameObject, iTween.Hash ("position", new Vector3 (transform.localPosition.x, upHeight, transform.localPosition.z), "speed", speed, "easetype", "linear"));
			lastMoveWasUp = true;
			// scale position fine
			iTween.ScaleTo(gameObject, iTween.Hash("y", upScale, "speed", speedscale , "easetype", "linear"));


Try with this:


Is it important to pass string?